java类库的阅读笔记_jdk1.7.0_40_java.util.concurrent.locks.LockSupport

2013 1031:

类:

java.util.concurrent.locks.LockSupport

方法:

public static void park() 、public static void unpark(Thread thread)

笔记:

这两个方法,一个将当前线程挂住,一个将指定线程唤醒。两个方法的效果都是立竿见影的,不考虑CPU时间片的话,就是立即生效。

根据当前阅读的源码分析,如果调用park后,线程信息不交给其他线程处理,那么这个线程就没有被唤醒的机会了。

类:

java.util.concurrent.locks.LockSupport

方法:

public static void park(Object blocker) 、 public static Object getBlocker(Thread t)

笔记:

park方法的作用与无参数park方法一样,多出来的blocker,会被反射放入当前线程的volatile Object parkBlocker;属性中。

调用getBlocker方法,可以把指定线程的parkBlocker属性取出来。

类:

java.util.concurrent.locks.LockSupport

方法:

public static void parkNanos(Object blocker, long nanos) 、 public static void parkUntil(Object blocker, long deadline) 、 public static void parkNanos(long nanos) 、public static void parkUntil(long deadline)

笔记:

将线程挂住指定时间,或者是时间段,或者是时间点。



你可能感兴趣的:(源码)