CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C++ Builder >  网络及通讯开发

请教一些关于用Api编写高效通用的通讯(网络、串口)的问题,谢谢

楼主ManOfBCB(CB还有希望吗?)2006-03-01 21:35:25 在 C++ Builder / 网络及通讯开发 提问

1、接收数据时用消息通知是否恰当?  
  2、串口通讯有异步、同步等方式,还有事件等等之类的,那种比较适用于通讯口多,数据量大  
        的通讯模式?  
  3、网络通讯又有哪些方式?那种比较适合通讯口多,数据量大的通讯?  
   
  能不能取个详细的例子,谢谢。 问题点数:100、回复次数:18Top

1 楼alloutoflove(andrew)回复于 2006-03-02 15:52:15 得分 10

串口本身来讲速度一般不高,   PC机一般串口最快也才115200,   再加入线路的干扰就更少了,   所以和网络不好通用的吧?Top

2 楼ManOfBCB(CB还有希望吗?)回复于 2006-03-02 16:26:01 得分 0

我需要作的是一个高效的串口通讯程序和一个高效通用(在windows2000,xp,2003下  
  都能用)的基于tcp/ip的网络通讯程序,如果有基于udp的更好。  
   
          希望大家提供些帮助!谢谢Top

3 楼ZHENG017()回复于 2006-03-03 16:54:09 得分 10

高效哦,使用iocp来管理多个createfile打开串口的handle,然后调用createiocompleteport添加,调用get来获取事件.同理,tcp也类似.udp?通常没必要使用iocp,直接recvfrom就好了.当然用iocp也成哦.Top

4 楼ManOfBCB(CB还有希望吗?)回复于 2006-03-06 19:45:10 得分 0

up,希望大家能说得详细一点,我刚接触通讯编程!谢谢Top

5 楼lother(阿艺)回复于 2006-03-08 19:55:01 得分 10

学习Top

6 楼windwent(赏金猎人)回复于 2006-03-11 19:00:33 得分 10

采用消息通知要看实际情况有没有必要了,串口通讯采用异步比较快,Top

7 楼zurong(★★★★★)回复于 2006-03-14 11:03:22 得分 10

UDP组播,可以适用于通讯口多,数据量大的通讯Top

8 楼ManOfBCB(CB还有希望吗?)回复于 2006-03-14 13:13:28 得分 0

tcp是可靠连接,udp是不可靠连接。如果要求数据每次传输对方都应该收到,如果没  
  收到,就重传,用那种好呢?我希望做成一个通用的类,我的思路是:  
          服务器端:包括一个监听线程,用于监听端口,一个套接口链表,监听程序没收到一个  
  请求连接,连接后则创建一个用于通讯的套接口,并加入链表,同时产生一个用于监听是否  
  有数据到来的线程,如果有数据来则用消息通知主线程,并且在主线程中发送数据。  
          客户端:一个套接字用于通讯,同样一个用于监听是否有数据到来的线程,如果有  
                          数据来则用消息通知主线程,并且在主线程中发送数据。  
   
  可能以上思路不是很好,请大家指点。谢谢Top

9 楼ManOfBCB(CB还有希望吗?)回复于 2006-03-16 19:37:10 得分 0

请问一问一答方式是否能采用异步非阻塞方式?Top

10 楼FengSC(小猪快跑)回复于 2006-03-16 21:08:45 得分 5

如果是一两个串口就用一般的方法就可以了,如果是几十百吧个,最好使用完成端口(IOCP)方式。网络和串口本质是一样的。Top

11 楼ManOfBCB(CB还有希望吗?)回复于 2006-03-23 20:25:15 得分 0

upTop

12 楼ManOfBCB(CB还有希望吗?)回复于 2006-03-24 14:35:45 得分 0

upTop

13 楼psc88()回复于 2006-03-27 11:03:14 得分 5

upTop

14 楼3996906(我只是建议,不提供最后的解决方法)回复于 2006-03-27 11:16:51 得分 20

上面回复太多没有细看,把我自己的经验讲出来,大家讨论参考一下,说错了8要怪我  
   
  感觉你对tcp和udp的可靠不可靠连接有误解,貌似停在字面上。。直说啦,包涵  
   
   
  回答下你的问题  
  1、接收数据时用消息通知是否恰当?  
  2、串口通讯有异步、同步等方式,还有事件等等之类的,那种比较适用于通讯口多,数据量大  
        的通讯模式?  
  3、网络通讯又有哪些方式?那种比较适合通讯口多,数据量大的通讯?  
   
  1。发送时一般是用消息通知,接收时我们一般用的事件  
  2。我的理解是每一个端口都相当于一个线程,你的要用网线通信的话,应该和串口不一样,当然异步应该合适一些,也难协调一些,实际处理起来也要看优化,这个偶就不擅长了  
  3。你没明确提出来,只好说自己的经验了,我们一般拿udp写网络通信的,用事件通知解手数据(就是回调函数),一般数据量的瓶颈在你的网络传输速度。Top

15 楼ManOfBCB(CB还有希望吗?)回复于 2006-03-28 14:40:36 得分 0

谢谢3996906(以后再说),大家继续阿,希望听听大家的意见Top

16 楼thht4321(牛牛)回复于 2006-03-28 23:58:15 得分 0

求购视频会议源代码!  
  有提供者请电:  
  tanhua1962@163.com  
   
  Top

17 楼ManOfBCB(CB还有希望吗?)回复于 2006-03-29 09:35:42 得分 0

upTop

18 楼tianshu888(CC)回复于 2006-03-29 10:18:54 得分 20

1、接收数据时用消息通知是否恰当?  
  2、串口通讯有异步、同步等方式,还有事件等等之类的,那种比较适用于通讯口多,数据量大  
        的通讯模式?  
  3、网络通讯又有哪些方式?那种比较适合通讯口多,数据量大的通讯?  
   
  答1:可以  
  答2:如果数据量比较大用同步方式比较适合,但是要有同步机制。  
  答3:我写过同时操作32个串口,但是数据量不大,我用是异步通讯。   你说的数据量大要看单位时间的数据量大小。Top

相关问题

  • API函数编写串口问题
  • 如何用DELPHI的API函数编写串口通讯软件(需多线程)?
  • delphi编写串口程序(急)
  • 关于java串口api
  • 用纯C语言编写串口通讯的程序
  • 关于编写串口程序的几个问题
  • tc下如何编写串口通讯程序?
  • delphi怎么编写串口程序〉? 答对送分!20分
  • 如何用VC编写向串口发送数据的程序?
  • 如何用vc编写串口通信的dll程序?谢谢

关键词

  • 通讯
  • 数据
  • 串口通讯
  • 网络通讯
  • 端口
  • 监听
  • 消息
  • 模式
  • 串口
  • 异步

得分解答快速导航

  • 帖主:ManOfBCB
  • alloutoflove
  • ZHENG017
  • lother
  • windwent
  • zurong
  • FengSC
  • psc88
  • 3996906
  • tianshu888

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo