C# 及时通信软件 如何做到及时读取消息 2.0 是这样的,最近在做局域网的及时聊天软件消息存放在数据库当中,只是在定时读取消息这里头疼了,使用timer吧感觉内存增长很快,也不能用死循环,求教各位大大,如何做到及时读取消息?没有分了,请谅解如果每个客户端都每隔60秒轮训数据库,那1000个客户端会不会把服务器搞挂了? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 MessageQueue需要客户机安装组建,太麻烦了,我的应用程序是C/S的 你应该在服务器上放个软件,由这个软件来接收数据入库,并且同时查询,该用户是否在线,如果在线,则直接发送到该用户的客户端上。不是客户端使用timer来取数据。 您代码有问题你肯定是在TIMER里面不停的创建和关闭连接数据库的对象导致的。 我可以在服务器上写个服务,定时读取数据库中未读的消息,存在一个DataTable中,然后定时客户端访问这个表,是这样的么? 你用socket通信是可以做到直接发送数据给客户端的,不需要让客户端来读取你的数据,你直接将数据发送给客户端就行了就按照你的说法写个服务,当然不用服务也可以。 您代码有问题你肯定是在TIMER里面不停的创建和关闭连接数据库的对象导致的。是这个样子的,呵呵 我也想用socket通信,但是内网里面服务器是不能访问客户端端口的,安全软件做了限制 我也想用socket通信,但是内网里面服务器是不能访问客户端端口的,安全软件做了限制 搞定了,最后还是采用webservice每2秒采集一次数据库的消息,然后存放在一个DataTable中,之后客户端直接访问这个DataTable读取数据,程序已经实现了 如何实现c#winform下mschart放大缩小功能 listview控件怎么能够选中一行一行? 控制视频播放开始时间 c# 绘图刷新的问题! 如何通过当前的System.Windows.Forms.DataGridTextBox 对象获得当前的DataGridCell对象? 求教:小妹刚接触cookie,望指点 初学者 怎么设置datagrid使数据绑时让他的滚动条处于最下方? console.Readline 与console.ReadKey有啥区别? C# IntPtr转为结构数组 求助 if循环跳过 验证只能输入数字和逗号
不是客户端使用timer来取数据。
就按照你的说法写个服务,当然不用服务也可以。
是这个样子的,呵呵