回 帖 发 新 帖 刷新版面

主题:[讨论]如何实现线程中的变量更新同步?

A类每0-2秒生成-100到100之间的随机整数。B类让一个计数器在A类生成负数的时候自减,并且在生成正数的时候自增。B类的计数器必须与A类同时实时更新。
按3种情况分别写:1,A与B在同一线程内;2,不同线程;3,不同进程
如何做?

回复列表 (共1个回复)

沙发


1,在同一线程中就不用多说,A生成一个数B就判断一下;

2,在不同线程中使用信号灯,或全局变量进行标志,A每次生成前判断一下信号灯,看B对上次生成的结果是否判断完毕,完毕后置信号灯在生成下一个。

3,在不同进程,这涉及到进程间通信问题,SendMessage,管道,剪贴板,或直接利用API读写另一进程的内存数据,都可以实现进程通信,下一步的做法与2类似。

我来回复

您尚未登录,请登录后再回复。点此登录或注册