请问通过组件和直接通过SOCKET API 进行网络编程有什么区别

godoli 2005-10-17 09:57:35
通过TServerSocket和TClientSocket组件编程时,只有阻塞与非阻塞两种模式,
通过SOCKET API编程时,除了这两种模式,在实现异步通讯时,可以使用5中I/O模型,: select(选择)、WSAAsyncSelect(异步选择)、WSAEventSelect(事件选择)、overlapped(重叠)以及completion port(完成端口)

请问采用组件编程和采用各种I/O模型编程时:
在性能上有什么区别;
两者分别适合哪些情况;
TServerSocket和TClientSocket两个组件的内部实现机制是怎样的?
多谢了!
...全文
274 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
sxzqlzx 2005-10-28
  • 打赏
  • 举报
回复
没什么本质的区别,我们是站在巨人的肩膀上的,如有没有法实现的功能,用API吧
VCSQLVB 2005-10-28
  • 打赏
  • 举报
回复
高,本人酷爱IOCP。
痞子酷 2005-10-20
  • 打赏
  • 举报
回复
I 一般采用API写SOCKET编程,很少用控件,这也许我在UNIX下用SOCKET API编程的缘故吧。I 在1860客服系统BCB开发,与一些厂商的接口使用SOCKET API开发的。
godoli 2005-10-17
  • 打赏
  • 举报
回复
通过阅读源码,发现TServerSocket和TClientSocket使用非阻塞模式时,
其实就是用了SOCKET I/O模型中的WSAAsyncSelect模型。
netsys2 2005-10-17
  • 打赏
  • 举报
回复
在性能上有什么区别;
---》在相同模式下,性能一样!

两者分别适合哪些情况;
---》组件适合于少用户数的应用,API的其他几类模型在大用户数的应用上效率高]

TServerSocket和TClientSocket两个组件的内部实现机制是怎样的?
--》请看CB\SOURCE下的源代码。
我不懂电脑 2005-10-17
  • 打赏
  • 举报
回复
在性能上有什么区别;
相同模式,没什么区别。

两者分别适合哪些情况;
组件方式简单方便、api方式强大可以使用更高级的功能。

1,316

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 网络及通讯开发
社区管理员
  • 网络及通讯开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧