社区
C#
帖子详情
.net remoting怎么不停的给服务器发送数据啊
linuxfly
2008-04-07 01:33:17
客户端A点一下调用服务器B程序中的一个函数fun,
fun里面有一个循环,
循环的每一步都要把结果反馈给客户端显示,而且速度要很快。
socket好像可以解决,但自己封装太太太麻烦了,而且稳定性安全性还不能保证
这个功能能用.net remoting实现吗,用里面什么机制,能否给点关键性的代码?效率怎么样?
...全文
168
13
打赏
收藏
.net remoting怎么不停的给服务器发送数据啊
客户端A点一下调用服务器B程序中的一个函数fun, fun里面有一个循环, 循环的每一步都要把结果反馈给客户端显示,而且速度要很快。 socket好像可以解决,但自己封装太太太麻烦了,而且稳定性安全性还不能保证 这个功能能用.net remoting实现吗,用里面什么机制,能否给点关键性的代码?效率怎么样?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
rangeon
2008-04-14
打赏
举报
回复
学习了
eta_wang
2008-04-14
打赏
举报
回复
纠正一下2楼说的,是可以做到“调一次,不停的往客户端返回数据”的,用委托,可以实现。
但是效率不高。
eta_wang
2008-04-14
打赏
举报
回复
切身体会,千万不要用Remoting,这个冬冬真的很难说。
我自己用Remoting实现了一个简单的C/S结构,客户端可以登录、登出并查询一定的信息、服务器端可以查看登陆的用户列表,查看列表的活动情况,手动或者自动踢掉长时间不活动的客户端,客户端和服务器端可以互相发消息。那段时间我花了很大的精力在remoting的学习上,但是,就在我把整个框架搭到现在这个程度,看起来比较完善的程度的时候,我放弃了,重新用socket开发系统。
我的问题和你的一样,实际上还是比较注重实时性的,用remoting实现c/s不是合理的选择,socket要成熟许多。
如果你需要的话留下邮箱,我把我已经实现的这个框架源码发给你。
最后建议你
一定要用socket解决,并不很复杂,效率也要高很多!
====================================
◆◆◆
【原创】苏烟 硬、软中华真假烟识别 实物拍摄精细图片鉴别教程
◆◆◆
====================================
◆◆◆
学说上海话速成 视频教程
◆◆◆
====================================
cch1010
2008-04-08
打赏
举报
回复
关注,学习!
HarleyTung
2008-04-08
打赏
举报
回复
TCP/IP
yhy0611
2008-04-08
打赏
举报
回复
像你这种情况应该使用Socket这样效率更高一些
如果你要使用Remoting实现的话,你可以像六楼说的那样在客户端实现一个异步委托或线程用于接收服务端的数据.通俗点说就是客户端定阅服务器的事件,这个例子也有很多,在网上就能找到的
badtank
2008-04-07
打赏
举报
回复
建立socket通讯比较合适。
CathySun118
2008-04-07
打赏
举报
回复
不要用函数调用,直接用socket通讯,你可以考虑用完成端口IO模型
蒋晟
2008-04-07
打赏
举报
回复
可以用TCP/IP,不过可以改改需求,不要查询那么频繁
mogui_
2008-04-07
打赏
举报
回复
在客户端实现一个异步委托或线程用于接收服务端的数据.
对于收到的数据的处理自然是在异步结果方法中处理了.
以下是说明(源于vs随机文档):
除了配置和 .NET 远程处理本身的要求外,远程处理方案中的异步编程与单个应用程序域或上下文中的异步编程相同。有关使用 .NET 远程处理以及同步和异步委托的完整示例,请参见远程处理示例:异步远程处理。
如同单个应用程序域异步编程一样,在 .NET 远程处理方案中使用异步编程意味着:
调用方决定一个特定远程调用是否为异步的。
远程类型不必显式支持它们的客户端的异步行为。
运行库强制实施完整的类型安全。
必须适当使用 System.Threading 对象等待或同步您的方法。
但是,在一个跨应用程序域或上下文边界进行调用的应用程序中,.NET 远程处理要求您配置 .NET 远程处理系统,并且要求确保客户端编程模型也符合作为远程调用目标的条件。其原因很简单:如果使用异步调用,则可能会使用 .NET 远程处理系统将从服务器中调用的回调函数。例如,如果您将委托传递给(不能远程处理的)静态方法,或忘记将信道端口设置为“0”(以便使系统能够为您选择客户端端口),对服务器的调用可以完成,但因为对客户端的回调无法完成,您将无法得到结果。
客户端不需要自行扩展 MarshalByRefObject 或配置任何远程类型,但除此之外,它必须与任何要成为服务器的远程类型遵循相同的规则:
实例必须接收回调函数。
信道必须注册以侦听回调函数。
wtk13
2008-04-07
打赏
举报
回复
remoting是同步的,就是说你一次调用,只能返回一次,不能象你想象的那样,调一次,不停的往客户端返回数据,做不到的,
remoting其实也是一个request然后一个response同样原理的.
楼上说的可以,可能是使用remoting事件,它不稳定不建议使用,
楼主的想法是用SOCKETS也不容易,
我也想不出用什么办法好.帮你顶吧.
cnfixit
2008-04-07
打赏
举报
回复
可以的,效率不知道……
xxl-job v2.2.0解惑
通过本课程,可以清楚的知道xxl-job的大概原理。能够解决在使用xxl-job时的一些常见问题。并能通过修改源代码来实现自己的业务。
技术
2011.10.9异步与多线程的使用场景 当需要执行I/O操作时,使用异步操作比使用线程+同步 I/O操作更合适。I/O操作不仅包括了直接的文件、网络的读写,还包括
数据
库操作、Web Service、HttpRequest以及
.net
Remoting
等跨进程的调用。而线程的适用范围则是那种需要长时间CPU运算的场合,例如耗时较长的图形处理和算法执行。但是往 往由于使用线程编程
.Net
面試4套
一 1. 面向对象的思想主要包括什么? 答: 继承,多态,封装,类,对象,接口,聚集,聚合,泛化 2. 什么是ASP
.net
中的用户控件 答: 用户控件就是使用.ascx作为扩展名的文件,其将多种服务器端控件组合在一起,作为一个单独的控件服务于页面。这种用户控件存在的问题如,将其拖到不同级别的目录下后里面的图片等的相对路径会变得不准确。需要自已写方法调整。 3.什么叫应用程序...
.net
知识集合
系统知识总结: 个人梳理总结: OOP: Object Oriented Programming: 面向对象编程技术的关键性观念是它将
数据
及对
数据
的操作行为放在一起,作为一个相互依存、不可分割的整体——对象。对于相同类型的对象进行分类、抽象后,得出共同的特征而形成了类 AOP(面向切面编程) 在软件业,AOP为Aspect Oriented Prog
html5服务器推送消息的各种解决办法,HTML5服务器推送消息的各种解决办法,html5服务器...
HTML5服务器推送消息的各种解决办法,html5服务器摘要在各种BS架构的应用程序中,往往都希望服务端能够主动地向客户端推送各种消息,以达到类似于邮件、消息、待办事项等通知。往BS架构本身存在的问题就是,服务器一直采用的是一问一答的机制。这就意味着如果客户端不主动地向
服务器发送
消息,服务器就无法得知如何给客户端推送消息。随着HTML、浏览器等各项技术、标准的发展,依次生成了不同的手段与方法能够实...
C#
110,534
社区成员
642,576
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章