202205-30 一篇文章理解阻塞、非阻塞、同步、异步 目录理解阻塞、非阻塞、同步、异步阻塞非阻塞同步异步总结理解阻塞、非阻塞、同步、异步首先说明,这些都是在特点场景下或者相对情况的词汇,OK,接下来开门见山。阻塞可以很直观的理解,就如节假日高速路出口收费站一样,上图片:9个收费亭,同时来了一大波车,这时候同一时刻只能有9辆车在收费,剩下的车都在只能在后面排队等待,这就是现实中很直观的阻塞现象。这9个收费亭,就是一个瓶颈,或许画为这样更符合大家对瓶颈二字的... 继续阅读 >
202108-26 浅析从同步原语看非阻塞同步以及Java中的应用 目录一、从硬件原语上理解同步(非特指Java)1.1、基本硬件原语1.2、用一致性实现锁1.3、使用上面的旋转锁实现我们一个同步原语——栅栏同步二、Java中的原子性操作概述三、Java中的CAS操作概述3.1、模拟ABA问题3.2、使用AtomicStampedReference重新实现四、Java中的Unsafe类4.1、Unsafe类中的重要方法介绍4.2、Unsafe类的使用五、JUC中原子操作类AtomicLong的原理探究5.1、原操作类概述5.2、AtomicLong的源码一、从硬件原语上理解... 继续阅读 >
202009-24 php多进程中的阻塞与非阻塞操作实例分析 本文实例讲述了php多进程中的阻塞与非阻塞操作。分享给大家供大家参考,具体如下:我们通过pcntl_fork来创建子进程,使用pcntl_wait和pcntl_waitpid来回收子进程。子进程退出后,父进程没有及时回收,就会产生僵尸进程。例1:<?phpdefine('FORK_NUMS',5);$pids=array();//我们创建5个子进程for($i=0;$i<FORK_NUMS;++$i){$pids[$i]=pcntl_fork();if($pids[$i]==-1){die('forkerror');}elseif($pi... 继续阅读 >