作者dream1124 (全新开始)
看板java
标题[心得] 多执行绪程式设计
时间Sat Aug 21 07:32:14 2010
http://eoffice.im.fju.edu.tw/phpbb/viewtopic.php?t=6280
因为我觉得坊间好找又有提到多执行绪的书都没有编得很好,
各种相关资料到处四散,而且很多说法令人疑信相参,
所以暑假发了一个愿,整理一篇多执行绪的学习笔记给学弟弟参考,
顺便练练口材和文笔,希望这篇指南可以变成作业系统理论与Java语言实务的桥梁。
但或许是我讲话太无聊、错误太多,也可能是大家不感兴趣。 写了一个多月,
除了老师夸奖几句以外,完全没有任何反应....害得我像在对空气讲话。
这感觉还满恐怖的,如果有人批评、给点意见,或是来信骂我胡说八道都还自然一点....
怎麽会完全没有反应呢? 真不晓得是发生什麽事....
明明里面就满多不好的地方,例如一开始写的程式都在建构式泄漏物件的参考,
(最近很忙,以後会慢慢修改这些不良设计 XD)
还有一些内容是思考各方说法之後推论的结果,未必有什麽根据....
没有人提供意见参考的文章,很难写得更好....
於是我决定PO来请大家多批评指教,找出那些我理解不透彻的地方,
希望能听听大家对文章内容编排和程式码的建议。
如果有些地方写对了,这样刚好又可以帮到那些初学执行绪的板友,就更好了....
谢谢大家~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.228.39.215
1F:→ nvidia:怎不用ServerSocke的例子 或者UI Threads 08/21 07:41
2F:推 nvidia:你这个就是纯粹介绍java threads 没有应用在实例上 08/21 07:48
谢谢 以後会扩充一些常用到多执行绪的领域相关例子。
刚开始没这样做,是觉得那些程式写来写去,还是要懂相关API背後的理论才会写得好,
而且这样一个例子才不会出现太多不同的类别,让不熟悉某些类别的人没办法快速上手。
话说回来,我想了想,会来看多执行绪的人,底子应该不会差到哪里去才是。
这样好像就不用太顾虑他们看不懂某些类别....直接拿更实际的例子好了。
3F:推 nvidia:你可以利用实际的例子去解释背後执行原理 08/21 08:10
4F:推 nvidia:创造一些情景 08/21 08:13
5F:推 liu2007:推~ 08/21 09:30
6F:推 risker760915:推~Thread这边写ServerSocket用过,但不熟悉,常常 08/21 12:09
或许可以参考Tomcat的架构设计,听说它是产生新的执行绪来处理request的。
我曾经想用它的原始码解释多执行绪给大家听,无奈程式功力太浅,
刚开始解读,遇到批次档就被挡在外面不得其门而入
7F:→ risker760915:让CPU的Loading飙高 08/21 12:11
8F:推 youknowme09:推! 比一堆作业文来乱的好太多了!!!! 08/21 12:44
9F:推 tabinoyume:这些在OS的书上面就会提了(我的是恐龙书) 08/21 12:46
新版的不晓得,但我看第六版以前恐龙书上的Java程式码都不够深入,
像是OS的书似乎就没有producer-customer的介绍? executor-service的介绍?
Atomic套件? Semaphore的用法? 这些我都会尽可能补上程式码范例。
而且OS书上有些内容是从作业系统的角度切入,不是java程式设计者关心的重点。
例如︰Kernal Threads和 API Threads的介绍就是这样。
就算你不明白将来要跑bytecode的JVM是呼叫系统的kernal Threads还是使用别人的API,
一样可以写的出不错的多执行绪程式。
现在有些部分与OS的书会重叠,因为都还在打基础。
将来会尽可能扩充高阶同步化类别的介绍。
10F:推 ilwu:推! 08/21 15:23
翻过这本书,想写的内容也和他差不多,但我是理解以後用中文写的
※ 编辑: dream1124 来自: 219.87.85.162 (08/23 17:14)