JDK 原罪...

2017-02-23 16:56:14 +08:00
 skywayman

多线程开发是 Java 语言中经常用到的(别说你不用)....

当我们谈论多线程的时候总有一个讨论点 : 线程安全. 当我们谈论线程安全的时候我们在谈什么? 什么原子性\可见性\顺序性\锁\同步\CAS\xx 原则\volatile 语法\jdk 的新库\vector 与 arraylist 哪个安全\面试考题等等等等....

SO...

妈蛋,能不能先把 JDK 中成百上千个类中,哪些不是线程安全的给苦逼的程序员标注出来先? 原罪啊... 老司机都表示不淡定了...

6180 次点击
所在节点    程序员
48 条回复
youxiachai
2017-02-24 11:54:55 +08:00
lz 还是太懒了...

当年..我学 java 的时候....一个月(闲时)把所有类包看完....
skywayman
2017-02-24 12:33:03 +08:00
@WhoMercy :) 可能开源就是这德行吧...
@youxiachai 皇上,还记得当年湖畔的夏雨荷 JPEGHuffmanTable 是不是安全的?
@zhzy0077 =和==都知道,何况 thread 和 runnable 上下文环境,编译器肯定有办法,再者换成 vector 也不是错啊,哪天业务变更,说不定 vector 更安全不是?
xianyu0
2017-02-24 12:51:12 +08:00
关 JDK 什么事,这是 JVM 的事吧
zhzy0077
2017-02-24 13:01:06 +08:00
1. 要是编译器这个都知道,就能帮你在可能发生 race condition 的地方自动加锁了,显然是不可能的。
2. 那按照你的说法, JDK 不用 ArrayList 了?大家一起用 Vector ?
AntiGameZ
2017-02-24 13:09:51 +08:00
@WhoMercy IDE 就应该尽最大可能去辅助程序员,这没有什么不对。如果能够有办法让人不看文档不搜索就很容易的根据 context 给出提示/警告/报错,不正应该是工具要去做的事情么?

觉得 LZ 说的有理,那么多冷嘲热讽偏离主题的...
xmh51
2017-02-24 13:15:02 +08:00
ide 真达到这种底部,还要程序员干啥?
sheep3
2017-02-24 14:50:26 +08:00
单纯的能力问题,你觉得要怎么告诉你哪些安全哪些不安全才行? doc 上面写着够不够?
Khlieb
2017-02-25 17:54:01 +08:00
Java 有两大开发工具,一个叫 JDK ,一个叫 OpenJDK

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/342674

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX