介绍 当TCP客户端同时处理两个输入时:标准输入和TCP套接字,当客户端fgets(在标准输入上)被阻塞并且服务器进程被终止时,我们遇到了问题。服务器TCP正确地将FIN发送到客户端TCP,但由于客户端进程被禁止从标准输入读取,所以它从没有看到EOF,直到它从套接字读取(可能更晚)。 如果一个或多个 ...
分类:
其他好文 时间:
2019-05-26 12:51:38
阅读次数:
83
ReentrantLock简介 ReentrantLock重入锁,是实现Lock接口的一个类,也是在实际编程中使用频率很高的一个锁, 支持重入性,表示能够对共享资源能够重复加锁,即当前线程获取该锁再次获取不会被阻塞。 ReentrantLock还支持公平锁和非公平锁两种方式。 那么,要想完完全全的弄 ...
分类:
编程语言 时间:
2019-05-22 15:54:26
阅读次数:
137
1、每个二层网络中,选一个“根(root)”交换机; 2、每个“非根”交换机上,只有一个“根端口(root port)”; 3、每个网段(链接)有一个“指定端口(designated port)”; 4、非根交换机上的端口既不是指定端口又不是根端口的被阻塞; 5、非根交换机之间的选择“指定端口”时, ...
分类:
其他好文 时间:
2019-05-19 23:27:02
阅读次数:
171
每个二层网络中,选一个“根(root)”交换机; 每个“非根”交换机上,只有一个“根端口(root port)”; 每个网段(链接)有一个“指定端口(designated port)”;非根交换机上的端口既不是指定端口又不是根端口的被阻塞;非根交换机之间的选择“指定端口”时 ...
分类:
其他好文 时间:
2019-05-19 23:22:25
阅读次数:
126
我们现在来说什么是ABA问题。假设内存中有一个值为A的变量,存储在地址V中。 此时有三个线程想使用CAS的方式更新这个变量的值,每个线程的执行时间有略微偏差。线程1和线程2已经获取当前值,线程3还未获取当前值。 接下来,线程1先一步执行成功,把当前值成功从A更新为B;同时线程2因为某种原因被阻塞住, ...
分类:
其他好文 时间:
2019-05-19 19:24:31
阅读次数:
173
适用场景 阻塞队列主要用在生产者/消费者的场景,下面这幅图展示了一个线程生产、一个线程消费的场景: 负责生产的线程不断的制造新对象并插入到阻塞队列中,直到达到这个队列的上限值。队列达到上限值之后生产线程将会被阻塞,直到消费的线程对这个队列进行消费。同理,负责消费的线程不断的从队列中消费对象,直到这个 ...
分类:
其他好文 时间:
2019-05-15 11:08:36
阅读次数:
96
当某个线程中调用其它线程的join()方法时,调用的线程将被阻塞,直到被join()方法加入的线程执行完成后才会继续运行。 示例: ...
分类:
编程语言 时间:
2019-05-03 18:39:51
阅读次数:
160
之前在调试存储过程时,出现卡死情况,无法插入数据 解决方法 1、查看那些表被锁住: 2、查看引起死锁的会话: 3、查看被阻塞的会话: 4、释放锁或者杀掉ORACLE进程: 具体情况根据每个人情况不一样,sid,serial#的值也不一样 参考来源:https://blog.csdn.net/haoj ...
分类:
数据库 时间:
2019-04-16 14:47:02
阅读次数:
633
IO 介绍 IO 模型 IO请求 分为两个阶段:等待资源 和 使用资源; IO请求:一般需要请求特殊资源(如 磁盘、RAM 或文件),当资源被上一个使用者使用没有释放的时候, IO请求会被阻塞,直到资源可用。 等待资源 阶段有两种策略: 阻塞:当IO请求资源没有准备好的时候,请求阻塞,直到得到资源的 ...
分类:
编程语言 时间:
2019-04-07 12:59:36
阅读次数:
170
NSRunLoop类声明的编程接口用于管理输入源对象。一个NSRunLoop对象处理像来自窗体系统中的鼠标和键盘事件,NSPORT对象和NSConnection连接对象这类的输入源。一个NSRunLoop对象也处理的NSTimer事件。 你的应用程序不能建立或明白管理NSRunLoop对象。每一个N ...
分类:
其他好文 时间:
2019-04-07 09:58:16
阅读次数:
445