易截截图软件、单文件、免安装、纯绿色、仅160KB

Java多线程

http://lavasoft.blog.51cto.com/62575/27069
守护线程和用户线程
守护线程与普通线程的唯一区别是:当JVM中所有的线程都是守护线程的时候,JVM就可以退出了;如果还有一个或以上的非守护线程则不会退出。(以上是针对正常退出,调用System.exit则必定会退出) 
所以setDeamon(true)的唯一意义就是告诉JVM不需要等待它退出,让JVM喜欢什么退出就退出吧,不用管它。
join方法
join()方法-等待该线程终止,那么如果thread_n.join(),就是说等待当前线程(join()的调用者--thread_n)终止
notify notifyall
wait与notify一般是配套使用的, 
一个线程在同步语句中调用Object.wait方法,使该对象或类的锁释放掉,等待CPU分配时间片给其它线程,当其它线程调用Ojbect.notify后,wait方法才会返回。 
notify与notifyAll的唯一区别就在于线程调用Object.wait方法后,有几个线程在等待其它线程将对象或类的锁释放掉,注意其它线程没有调用notify或notifyAll之间,调用Object.wait的线程是不是获取锁的,它们的区别就在于是唤醒调用wait方法的线程还是所有等待锁被释放的线程。
1、这两个方法来自不同的类分别是Thread和Object
  2、最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法。
  3、wait,notify和notifyAll只能在同步控制方法或者同步控制块里面使用,而sleep可以在
  任何地方使用(使用范围)
  synchronized(x){
  x.notify()
  //或者wait()
  }
  4、sleep必须捕获异常,而wait,notify和notifyAll不需要捕获异常
  扩充阅读:
  java 线程中的sleep和wait有一个共同作用,停止当前线程任务运行,但他们存在一定的不同,首先我们先看sleep中的构造函数
  sleep(long millis)           Causes the currently executing thread to sleep (temporarily cease execution) for the specified number of milliseconds, subject to the precision and accuracy of system timers and schedulers.
  sleep(long millis, int nanos)          Causes the currently executing thread to sleep (cease execution) for the specified number of milliseconds plus the specified number of nanoseconds, subject to the precision and accuracy of


相关文档:

JNA实现Java调用Fortran

在成功实现Java调用C++之后,接下来想到能否通过JNA实现Java调用Fortran,今天试验了一下,还是比较容易的。
网上有一个Java调用F95的例子,但是我考虑不仅要实现F95的调用,还要实现F77的调用,所以费了一些周折。
问题的关键在于F77为过程名自动添加了一个尾部的下划线,所以sub1这个过程,到Java一端,就变成了sub1_, ......

传智播客Java培训 JDBC连接池

     今天从同学们那里搞了两个翻墙软件,一个是无界,一个是自由门,刚听到翻墙软件大家一定很迷糊吧,我也是刚知道有这种东西,听说用这种软件可以访问一些被国家禁止访问的网站,确切的说就是一种代理机制,大家不要多想,我弄这个东西没别的目的,动机是很单纯的,就是想看一看全球最大的视频 ......

Java开发工具快捷键

Ctrl+1 快速修复(最经典的快捷键,就不用多说了)
Ctrl+D: 删除当前行
Ctrl+Alt+↓ 复制当前行到下一行(复制增加)
Ctrl+Alt+↑ 复制当前行到上一行(复制增加)
Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)
Alt+↑ 当前行和上面一行交互位置(同上)
Alt+← 前一个编辑的页面 ......

java序列化(Serializable)的作用和反序列化

这里转载一篇讲解java序列化(Serializable)和反序列化方面的感觉很好的文章。
1、序列化是干什么的?
简单说就是为了保存在内存中的各种对象的状态(也就是实例变量,不是方法),并且可以把保存的对象状态再读出来。虽然你可以用你自己的各种各样的方法来保 存object states,但是Java给你提供一种应该比你自己好的保存 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号