应用背景:现在要编一个通信客户端程序,其中在一个线程里进行网络输入流的监听,在收到我需要的消息后,我会对某个类中的一个全局变量进行置位;这个变量的值改变后,在另一个线程中要有响应。类似于给按钮绑定个监听器的效果。更具体的讲是这要的:比如客户端登陆的时候,收到登陆成功的消息话flag = 0, 收到登陆失败消息的话flag = -1。但登陆线程和监听线程是两个线程(考虑到扩展性,我想让监听线程与其它线程独立开来),我如何能让监听线程中收到消息,对全局变量进行置位,让登陆线程立刻就知道变量已经置位。我不知道在这种场合下怎样设计比较合适,求指教!代码和思路均可!
不过要注意配对关系。
+1 楼主可以看看Observer模式
给这个变量封装一个setter方法,保证只有该方法可以修改变量的值,然后在这个方法中通知所有观察此变量的对象