场景:
> 4个用户启动连接到基于数据库的待办事项列表的相同客户端程序(Winforms)的单独实例.
>第一个用户选择第三个待办事项列表项.
如何更新/刷新其他3个用户屏幕以反映项目#3不再可用?
我的想法是一个包含最后更新日期时间戳的表.然后计时器会每隔几秒检查一次,看看是否有任何变化.
UPDATE1:
感谢所有人 – 肯定有许多有效的答案.
我选择了Icemanind推荐的方案的简单版本.
解决方法:
是.最好的方法是实现“推”式系统.以下是它的工作原理.只要有人点击客户端上的内容,客户端就会向服务器发送消息.服务器需要接收此信号,然后服务器将向连接到服务器的所有客户端发送刷新消息.
我不知道您的客户端或服务器是否已编码,但您需要在服务器上创建一个“侦听”来自客户端的传入消息的线程,一旦收到消息,将其放入队列,返回监听了解更多信息.服务器上的第二个线程需要处理队列中的消息.
在客户端,您还需要第二个线程来侦听来自服务器的传入消息.收到消息后,它可以处理消息并采取任何必要的操作.
有关客户端/服务器和套接字编程的相当不错的教程可以在这里找到:http://www.codeproject.com/KB/IP/serversocket.aspx
当然,这是一个指南.您需要根据需要进行修改.
希望这是有道理的,祝你好运!