- 博客(6)
- 收藏
- 关注
原创 多线程基础---线程的生命周期
new Thread().start()时,进入runnable状态当cpu调用时,则进入running状态当正常结束时,进入dead状态当在run方法中遇到某个对象p.wait()时,线程进入p对象的wait Pool当另外一个线程的run方法中调用p.notify()时,当前线程被唤醒,并进入lock pool,等待获取对象的锁定网上还有另外一种画法,显得比较简单,将...
2013-06-06 14:18:09 123
原创 多线程基础----wait、notify线程通信
下面是一个生产者消费者实例。wait使得当前执行的线程进入某个对象的休息池,notify唤醒某个对象休息池中的某个线程,使其进入某个对象的等待池,等到该线程重新获得锁定,就会继续执行之前wait后面的代码。public class ThreadDemo2 { public static void main(String args[]){ Q p=...
2013-06-06 13:14:28 113
原创 多线程基础----join
JDK 是这样说的:join public final void join (long millis )throws InterruptedException Waits at most millis milliseconds for this thread to die. A timeout of 0 means to wait forever. thread1.join(10000...
2013-06-05 16:57:39 95
原创 多线程基础----setDaemon()前台进程与后台进程
线程的setDaemon(true)方法声明线程为一个后台线程。当main主线程结束后,只要存在前台线程,那么整个进程不会结束。 public static void main(String args[]){ Thread t1= new Thread(new Runnable() { @Override public void...
2013-06-05 15:23:43 170
原创 JAVA获取版本号
String version = FrameworkInfo.class.getPackage().getImplementationVersion();JAR除了包含.class文件外,还包括一个META-INF文件夹.它下面又包含了一个MANIFEST.MF的文件.它包含了这个产品的产品信息,其中包含版本号...
2013-06-03 12:37:16 274
原创 移位运算
《深入理解计算机系统》第36页1、x<<k表示x向左移动k位,丢弃最高的k位,并在右端补k个0.2、x<<j<<k等价于(x<<j)<<k3、x>>k,机器支持:逻辑右移和算数右移。逻辑右移在左端补k个0;算术右移在左端补k个最高有效位的值,对有符号数的运算非常有用4、C语言中unsigned声明的整形...
2013-05-30 14:34:32 170
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人