假设办理业务的用户源源不断,每个窗口同时工作,1窗口接客后state1=1,(1表示忙碌),这时开始计时(计时10s),期间代码跳到其他段,指示其他窗口的工作窗口,怎么让这个要求实现:只要开始计时满10s,无论代码执行到了哪个地方,都先停下来执行对窗口1的状态的改变state1=0;改变完后继续执行刚才未完的代码
= =回答得很专业。。。可是我真的听不明白,没学过java,百度了一下貌似原子操作时java常用术语?我不是多线程操作。。。我问这个的目的是:有没有什么库函数可以让我直接用啊?
追答原子操作虽在java中使用比较多,但也只是一个概念,多线程处理肯定会涉及。也比较好理解
你不是多线程的话,怎么可能在其他窗口工作的时候,1号窗口的状态能发生变化呢?程序的执行都是顺序性执行的
定时器其实也算是一个多线程概念,你这样理解:定时器和你的当前任务是同时在进行的。
signal() http://baike.baidu.com/view/64630.htm ,模拟系统处理异常中断的方式,用软中断完成你的需求。找个linux任务调度的看一看也许对你更有帮助。
个人也是linux系统的初学者,多线程和信号编程都比较弱,只有些肤浅了解。
望有高人更多指点,也同关注一下。