猿问
多线程计算相同的数据,结果为什么不稳定
多线程计算相同的数据,结果为什么不稳定。已经测试过了,如果是单线程的,结果就是稳定的,请问怎么回事?
缥缈止盈
浏览 1452
回答 3
3回答
慕森卡
多线程之间如果访问了相同数据的话,那么就需要做线程同步访问控制才能保证数据的一致性。例如:i++操作,本质是三个操作读取i,i加1,然后将i的值写入内存中,中三个操作如果有两个操作跨线程了,那么就导致其他线程可能得到错误的结果。所以多线程访问共享变量需要做同步处理。
0
0
0
翻阅古今
多线程的时候,每个线程的执行顺序不一定,造成结果不一定,可以考虑加锁!
0
0
0
忽然笑
脏数据,线程之间相互通信出问题了呗
0
0
0
随时随地看视频
慕课网APP
相关分类
测试
我要回答