V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  kandaakihito  ›  全部回复第 9 页 / 共 44 页
回复总数  870
1 ... 5  6  7  8  9  10  11  12  13  14 ... 44  
@chengyiqun #9 是的,我之前也试过,在每个线程里面睡一下确实能不卡死。这一点我前面没提到。

之所以前面没提到,是因为我认为:线程每次唤醒的时候,是会从主存刷新数值到缓存的。这么做和直接给变量 a 加 volatile 没啥区别。同理还有 sout 等 synchronized 的操作。

然而,“线程 1 执行的时候,永远读取到旧值” 这句话是有条件的。变量 a 没有 volatile 不代表子线程永远不会去刷新缓存。实际上只要主线程不睡觉或者不获取当前线程名称,程序虽然有数据正确性问题,但是并不会卡死!

<br/>

简单概括:我知道这段代码的变量可见性无法保证,但是我实在是想不通,为什么主线程唤醒会导致子线程不再主动刷新工作区内存?
@chengyiqun #6 感谢你愿意指点问题所在。

但是,包括原帖 op ,就是刻意在代码中规避所有可见性的操作,研究为什么会卡死。。。

重点在于,为什么会卡死,而不是这么做有没有数据正确性问题。
补一张代码截图,方便路过的看: https://i.imgur.com/W1XZiVu.png
代码:

class Solution {

private int a = 0;

public void incr() {
a++;
}

public int getA() {
return a;
}

public static void main(String[] args) throws InterruptedException {
Solution su = new Solution();

Thread t1 = new Thread(() -> {
while (su.getA() <= 100) {
if (su.getA() % 3 == 0) {
System.out.println(su.getA());
su.incr();
// System.out.println(Thread.currentThread().getName() + " : " + su.getA());
}
}
});

Thread t2 = new Thread(() -> {
while (su.getA() <= 100) {
if (su.getA() % 3 == 1) {
System.out.println(su.getA());
su.incr();
}
}
});

Thread t3 = new Thread(() -> {
while (su.getA() <= 100) {
if (su.getA() % 3 == 2) {
System.out.println(su.getA());
su.incr();
}
}
});

t2.start();
t3.start();

System.out.println("current: " + su.getA());
// Thread.sleep(10);
Thread.sleep(100);
// System.out.println(Thread.currentThread().getName() + " : " + su.getA());

t1.start();

}

}
@zhengfan2016 #67 啊这,大哥你这啥学历啊,你之前月薪 1.8k 也太过于匪夷所思了吧?

我大三那段时间,不想留在实习的公司的同时又暂时没找到下家,就抱着试试看的心态问家里人有什么内推吗。结果连着给我推了几个月薪 4k 的工作,比如中药厂操作员、驾校前台之类的。。。直接把我心态干破防了
56 天前
回复了 young1 创建的主题 职场话题 Java 工资
@pelloz 确实是这样,但是说实话,这挺浪费的。

如果工作内容只是局限于使用 spring 进行 crud 或者前端用各种组件搭积木的话,二本都嫌多,直接让技校来培养这类人就差不多了。

现在看到一堆 911 的研究生跑去写 spring 和 gin 我就感到害怕,同时感叹这实在是在浪费社会教育资源。
楼主的这句:“这些人似乎觉得,自己在有机会接受了多年教育后,就理应得到显著高于他人的收入”,有点不食肉糜了哈。

想问一下,你对于高收入、低收入的定义是什么?建议说清楚具体的数字范围,顺带补充一下案例哈,不然大伙很容易误解。

你口中的“这些人”,包不包括那些月休一天但是收入 2800 的县城工厂工人?包不包括那些 js 、java 一把梭的月薪 4k 的二线城市全干牛马?包不包括那些月收入 1500 但是还要大小周的双非科班实习生?

上面都是我亲眼看到的例子,看不到的话建议来福建一趟。这些人确实彩笔,但是你觉得哪怕仅仅从出卖体力的角度来看,这种收入合理吗?
57 天前
回复了 tonychenc 创建的主题 远程工作 [全职远程] 招聘前端工程师 - React
@movq #3 重点不在于学历,在发帖时间。2014 年那个时间点,连高职的都能获得面试机会。。。隔壁帖子有个写了十年 java 的双非老哥,底下高赞让他去开货拉拉
58 天前
回复了 tonychenc 创建的主题 远程工作 [全职远程] 招聘前端工程师 - React
@zhwithsweet #1 我去翻了楼主的发帖记录,看见了更加震撼人心的东西:

https://www.v2ex.com/t/150391#reply2

gosyzj 2014-12-02 00:51:44 +08:00
高职的要么

tonychenc 2014-12-03 15:04:32 +08:00
看能力,可以先发简历给我
因为和你学历一样,所以家访了一下你。

盲猜你年龄 30 出头,对于 Java 生态比较熟悉,对八股文和常见算法题有很多积累,对于前端、大数据、云平台之类的也会一点。现在在某家人数 500 人以内的小公司当小组长,手上带着约 4-8 个人。

平时的主要工作内容还是业务 crud ?虽然说是小组长,但是实际上根本不是管理岗,主要的工作也无非是给小弟派活,彩笔小弟卡壳了就亲自上,偶尔还要和其他部门的人撕逼。

<br />

好吧,其实我还是挺羡慕你的,起码能做到这个高度,能苟这么多年。

我现在都不怎么刷算法题了,就打算原型设计、前端、后端、运维,各掌握一点入门级别的东西。看看要是被裁了,能不能回老家找个月薪 4k 的小公司当全干牛马,实在不行找个外贸小公司当网管去。

昨晚还和对象吵架了,大致内容就是她一直希望我回老家,可是我现在能保住当前的工作就烧高香了,哪还有什么可能跳槽。
59 天前
回复了 ldlywt 创建的主题 职场话题 这几年毕业的专科感觉完全没出路了。
属实是难绷。

在生产过剩和消费不足的大背景下,学校和社会还在持续不断地增加低收入低消费的生产型牛马。。。
59 天前
回复了 ldlywt 创建的主题 职场话题 这几年毕业的专科感觉完全没出路了。
别在传统的 web 前后端方向上纠结了,这条路是知名度最高且上手难度最低的,早就麻了。
61 天前
回复了 asche910 创建的主题 生活 2025 年大家的 flag 是什么?
找到一个工资高点的同时依旧双休的工作
@processzzp #6 绫波丽说得对
这图看一次绷一次
64 天前
回复了 KanadeCCCC 创建的主题 职场话题 公司变更工作地点,调整薪资结构
想问一下,你们公司规模如何
64 天前
回复了 solywsh 创建的主题 职场话题 年终了,大家如何写公司的年度总结呢
小公司小团队,领导其实很清楚下属在干啥。

所以我年终总结直接就贴了一些数据上去,比如 commit 次数和完成任务数之类的,顺带总结一下参与了哪些项目哪些模块。

表达出“我今年没有摸鱼,工作量不是团队垫底”的意思就行了,粘一堆 ai 生成的屁话上去反倒让领导看着头大。
请问有学历要求吗
64 天前
回复了 hubayi 创建的主题 生活 大家有没有发现国内吸烟的人越来越多?
这东西看你所处的圈子吧,主要跟职业、地域什么的有很大关系。

比如之前在的公司,技术部门团建往往就是吃火锅喝碳酸饮料,但是拉上对外部门那就桌上会出现酒类饮料了。
65 天前
回复了 kandaakihito 创建的主题 生活 你们过年打算给父母钱吗?
@shuang #18 正常,不收就不收呗,反正以后肯定能用到
1 ... 5  6  7  8  9  10  11  12  13  14 ... 44  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   919 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 40ms · UTC 22:40 · PVG 06:40 · LAX 14:40 · JFK 17:40
Developed with CodeLauncher
♥ Do have faith in what you're doing.