http://rox-xmlrpc.sourceforge.net/niotut/
http://tutorials.jenkov.com/java-nio/index.html
http://www.cs.brown.edu/courses/cs161/papers/j-nio-ltr.pdf
http://rox-xmlrpc.sourceforge.net/niotut/
http://tutorials.jenkov.com/java-nio/index.html
http://www.cs.brown.edu/courses/cs161/papers/j-nio-ltr.pdf
不用SimpleDateFormat就能格式化的,之前3年一直都太土太土太土了……
%1$tx,其中1表示第一个参数需要是Date,t是表示转入日期控制,x表示一般的ymd哪些什么的日期控制。
//格式化
String tmstr = String.format(“%1$tY-%1$tm-%1$td %1$tH:%1$tM:%1$tS” , new Date());
//输出 2011-12-09 17:14:57
System.out.println(tmstr);
7.1 任务的取消
任务应该是可取消的:在run的外界可以让其状态从运行变为终止。
需要取消任务的场景:
1、用户取消任务,如点击了“取消”
2、时间timeout限制的任务
3、程序外部事件需要处理。
4、出错
5、关闭、退出、清理
Java中没有原生提供“停止线程”的方法,但可以使用“bool标志位+volatile”的方式来实现,注意list还是需要被锁保护的。
@ThreadSafe
public class PrimeGenerator[......]
5.1 同步的Collections
JDK中,同步的Collections包含Vector和Hashtable,以及从1.2之后加入的Collections.synchronizedXXX 工厂构造函数生成的类。
这些类都内置了同步措施,确保任何时间只有一个线程能访问public方法。
然而这有一些例外:下标迭代、iteration迭代、foreach、next()、pre()等都是“快速失效的”,即有可能在你调用的过程中其他线程执行了修改,导致抛出异常。
因此,下面只是[......]
