第220章 院士请指教(第3页)

程德昌一脑门黑线,“看你能不能解决这个bug!”

周浩然笑笑,“这个简单。”

乔海道:“不简单,这个程序,我们在sun演示机上跑得好好的,转到了浏览器上,运行五分钟就冻结了。”

“检查下事件的分发线程。”

周浩然开始操作。

“java的线程模型太垃圾了……”

乔海在旁边抱怨,下一刻,他就顿住了。

因为周浩然的操作太熟练了。

而且速度极快。

“找到了,就在这。”

周浩然伸手指着屏幕上的一段代码。

publicclassparticleextendsthread{

publicvoidrun{

while{

repaint;//直接调用awt绘图方法

try{sleep;}

catch{}}}}

“现在的java语言有很多缺陷和漏洞,那位java之父也未必知道,你看着他的书来编程,难免会遇到一些解决不了的bug。”

这一刻,周浩然好像跟程院长换了身份。

好像他才是科学院院士、博士生导师,学科带头人、复旦大学计算机学院的院长。

所有人都顷刻震惊!

程院长脸色扶了扶眼镜,往前凑,使劲盯着这段代码。

周浩然笑道:“程院长,你这种大专家,就别来研究代码了,你都多大岁数了。”

程德昌难以置信,“你说的是对的”

周浩然道:“肯定对啊,你们在用户线程里直接操作awt组件,实际上,所有gui操作都必须在系统事件线程执行。这是java的设计缺陷。”

这其实不是什么太高深的难题。

二十年后,著作《java并发编程实战》一书里,就把这个问题详细的给说清楚了。从那以后,全球开发者才明白这到底是怎么回事。

原来困扰多年都很难解决的困境,竟然是java之父给弄错了。

放在当下这个年代,堪称绝杀!

周浩然笑着说:“其实也不怪你们,全世界多少开发者都被这个缺陷给困扰住了。回头我写一篇论文发出来,给全球的互联网行业发展做点微薄的贡献。”

“有办法解决吗”

乔海发现有点冷场,就主动跟他沟通。

真尴尬啊!

堂堂的院士、博导、院长,在一个小年轻面前,跟个学生似的。

“简单。”

周浩然调整了输入法,开始敲键盘,修改代码。

主要是调用runnable接口,调用eventqueue类api,调用invokelater函数,把绘图操作抛回给系统事件队列。

修改过后,演示起来。

屏幕上的动态粒子恢复了流畅运动。

成功了!

“嘶!”

整个实验室,一片死静。

各自震惊。

好像都忘记了呼吸。

“掌声吧”

还是程德昌院长见多识广,先镇定下来鼓掌。

然后,围着他们站成一圈的博士、硕士们,才开始热烈鼓掌。

乔海鼓掌最凶。

都有点热泪盈眶。

他现在终于明白妹妹为什么这段时间总在家里说“周浩然”这个名字了。

这还是人吗

太强了吧!