PDF 课件和源代码下载地址:
https://gitee.com/geektime-geekbang/LetsJava
作者回复: 我的理解是,你的问题是如果a在做compare and swap的时候,compare完毕了,结果还没swap,就被b给抢险swap了。 其实这就是compare-and-swap的用处。这是一个CPU级别的原子指令,也就是说,在执行这个指令的时候不会被打断。对于线程a来说,compare-and-swap是一气呵成的,不存在b来打断这个过程。这个指令就好像加法运算一样,不允许还没加完,别人过来继续操作这个数。
作者回复: 生成随机字母和数字,都转成String 放到list里 调用Collections的sort方法给list排序
作者回复: 你可以参考一下我在https://time.geekbang.org/course/detail/181-113666里回复的jjn0703的问题。