queue模块实现了多生产者,多消费者队列 queue模块的常用类和异常 queue.Queue(maxsize=0) 先进先出(FIFO)的队列, maxsize: 队列的大小(即队列的元素个数),默认0,队列大小无限;如果超过maxsize,队列会加锁,添加新元素是被堵塞,直到队列中的元素小于m ...
分类:
编程语言 时间:
2021-02-19 13:10:44
阅读次数:
0
本系列研究总结高并发下的几种同步锁的使用以及之间的区别,分别是:ReentrantLock、CountDownLatch、CyclicBarrier、Phaser、ReadWriteLock、StampedLock、Semaphore、Exchanger、LockSupport,这是第三篇,主要总结... ...
分类:
其他好文 时间:
2021-02-19 12:53:46
阅读次数:
0
1.原子性(Atomicity) 定义:不可再分割的操作 Java内存模型直接保证原子性变量操作包括:read、load、assign、use、store 和 write 这6个 2.可见性(Visibility) 定义:是指当一个线程修改了一个共享变量的值时,其他线程能够立即的指这个修改 java ...
分类:
其他好文 时间:
2021-02-18 13:27:59
阅读次数:
0
JS三座大山_单线程&EventLoop JavaScript是单线程、单并发、非阻塞语言 单线程:主程序只有一个线程,即同一时间片段内其只能执行单个任务。 单线程背景:浏览器执行环境中,若多线程同时对同一DOM进行操作,无法保证程序执行一致性。 引发的问题: 单线程,意味着任务都需要排队,前一个任 ...
分类:
编程语言 时间:
2021-02-18 13:16:56
阅读次数:
0
1. 单进程最大打开文件数限制 有时候会遇上socket/file: can‘t open so many files的问题,其实是Linux系统有文件句柄限制的,一般Linux系统限制单进程最大可以打开1024个文件,这是远远不能满足高并发需求的。 通过ulimit –a命令来查看系统的一些资源限 ...
分类:
系统相关 时间:
2021-02-17 14:58:56
阅读次数:
0
秒杀就是抢购的功能,会有很多人抢购,所以要求扛得住高并发 秒杀的商品信息存入Redis缓存(因为访问数据量大,所以不直接对数据库进行操作) 秒杀商品存入Redis来提升访问速度。 1.秒杀列表数据 2.秒杀详情页数据 spring定时任务-定时将秒杀商品存入Redis中。 定时将秒杀商品存入Redi ...
分类:
其他好文 时间:
2021-02-17 14:44:35
阅读次数:
0
ReentrantLock源码 父子类关系:NonfairSync->Sync->AQS AQS源码 核心是volatile int state以及等待队列。 state的具体含义交给子类来定义。 ReentrantLock中state代表加解锁。 CountDownLatch中state代表需要c ...
分类:
编程语言 时间:
2021-02-17 14:21:25
阅读次数:
0
1. 10秒钟测试ip段所有IP的连通性 (base) [root@wlt-overseas-middleware-master ~]# cat su-asyncio-re-cancel.py import asyncio import time import re # call shell cmd ...
分类:
编程语言 时间:
2021-02-16 12:27:26
阅读次数:
0
参数服务器训练基本理论 参数服务器训练是分布式训练领域普遍采用的编程架构,主要解决以下两类问题: 模型参数过大:单机内存空间不足,需要采用分布式存储。 训练数据过多:单机训练太慢,需要加大训练节点,来提高并发训练速度。 如图所示,参数服务器主要包含Server和Worker两个部分,其中Server ...
分类:
其他好文 时间:
2021-02-16 11:42:24
阅读次数:
0
勤奋能够弥补聪明的不足,但聪明无法弥补懒惰的缺陷。你好,我是梦阳辰!期待与你相遇! 概述 JUC就是java.util .concurrent工具包的简称,俗称java并发包。这是一个处理线程的工具包,JDK 1.5开始出现的. 01.Java多线程复习 Interface Lock Lock实现提 ...
分类:
其他好文 时间:
2021-02-16 11:41:02
阅读次数:
0