一、sleep()、yield()、wait()、join()的区别 1.sleep() 释放CPU,不释放锁 使当前线程进入阻塞状态,指定时间内不会执行。 2.yield() 释放CPU,不释放锁 使当前线程回到可执行状态,有可能出现回到可执行状态又马上可以执行的情况。yield只能使同级优先级或 ...
分类:
编程语言 时间:
2017-09-02 15:35:11
阅读次数:
166
死锁的四个必要条件互斥条件(Mutual exclusion):资源不能被共享,只能由一个进程使用。请求与保持条件(Hold and wait):已经得到资源的进程可以再次申请新的资源。非剥夺条件(No pre-emption):已经分配的资源不能从相应的进程中被强制地剥夺。循环等待条件(Circu ...
分类:
其他好文 时间:
2017-09-02 14:23:18
阅读次数:
240
sleep(): 1 .是Thread类中的一个方法,用于线程休眠, 2 .休眠时间结束后,该线程可以自动唤醒; wait(): 1. 是Object类中的一个方法,用于线程等待, 2. 如果想要唤醒,必须使用notify()或notifyAll(),(不能自动唤醒) ...
分类:
编程语言 时间:
2017-09-02 11:32:29
阅读次数:
190
这是一个很有意思的问题~ 首先,我们要知道TCP是全双工的,即客户端在给服务器端发送信息的同时,服务器端也可以给客户端发送信息。而半双工的意思是A可以给B发,B也可以给A发,但是A在给B发的时候,B不能给A发,即不同时,为半双工。 单工为只能A给B发,B不能给A发; 或者是只能B给A发,不能A给B发 ...
分类:
其他好文 时间:
2017-09-02 01:09:35
阅读次数:
322
了解新知识之前需要知道的一些知识 同步(synchronous):一个进程在执行某个任务时,另外一个进程必须等待其执行完毕,才能继续执行 异步(asynchronous): 阻塞(blocking): 非阻塞(non-blocking): #非阻塞和阻塞的概念相对应,指在不能立刻得到结果之前也会立刻 ...
分类:
编程语言 时间:
2017-09-02 01:02:53
阅读次数:
272
package ratelimitimport "io"type reader struct { r io.Reader bucket *Bucket}// Reader returns a reader that is rate limited by// the given token bucke... ...
分类:
其他好文 时间:
2017-09-01 10:50:10
阅读次数:
176
转载:http://blog.csdn.net/ns_code/article/details/17225469 在Java中,可以通过配合调用Object对象的wait()方法和notify()方法或notifyAll()方法来实现线程间的通信。在线程中调用wait()方法,将阻塞等待其他线程的通 ...
分类:
编程语言 时间:
2017-08-30 22:37:54
阅读次数:
189
上一篇随笔我们学了全局解释器锁,前面也学了互斥锁,今天学习一些与锁相关的点,例如递归锁,信号量,Event,还会学习我们已经很熟悉的队列,不过这次的队列是作为一个模块出现的。 ...
分类:
编程语言 时间:
2017-08-30 20:02:37
阅读次数:
234
package seleniumLearn1; import java.util.concurrent.TimeUnit; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.s... ...
分类:
其他好文 时间:
2017-08-30 15:35:42
阅读次数:
126
系统要实现某个全局功能必定要需要各个子模块之间的协调和配合,就像一个团队要完成某项任务的时候需要团队各个成员之间密切配合一样。而对于系统中的各个子线程来说,如果要完成一个系统功能,同样需要各个线程的配合,这样就少不了线程之间的通信与协作。常见的线程之间通信方式有如下几种: 1、wait和notify ...
分类:
编程语言 时间:
2017-08-30 15:29:11
阅读次数:
221