线程信息返回与同步机制解析
1. 线程信息返回
1.1 轮询方式
在多线程编程中,当需要从线程返回信息时,新手常采用轮询的方式。这种方式是让 getter 方法在结果字段设置好之前返回一个标志值(或者抛出异常),然后主线程定期轮询 getter 方法,检查其返回值是否不再是标志值。以下是一个示例代码:
public static void main(String[] args) {
ReturnDigest[] digests = new ReturnDigest[args.length];
for (int i = 0; i < args.length; i++) {
// Calculate the digest
File f = new File(args[i]);
digests[i] = new ReturnDigest(f);
digests[i].start();
}
for (int i = 0; i < args.length; i++) {
while (true) {
// Now print the result
byte[] digest = digests[i].getDigest();
if (digest != null) {
StringBuffer result = new StringBuffer(args[i]);
resu
超级会员免费看
订阅专栏 解锁全文

96

被折叠的 条评论
为什么被折叠?



