关于linux下多线程socket通讯的问题

agedmagician 2010-09-08 02:34:09
是个测试类的程序,要在linux下编写一个客户端程序,要发送多种结构类型的消息(10多种),比如每种要发1000条消息给服务端,用多线程实现。
请问怎样实现比较好,大侠请帮帮忙
...全文
310 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
agedmagician 2010-09-09
  • 打赏
  • 举报
回复
因为是个测试程序 我是想多线程同时发包 发过去之后=2秒 不管有没有反应都继续发
比如我要创建3个线程的话 这样可以吗
main()
{。。。
pthread_create( &tid1, NULL, funsend, NULL )
pthread_create( &tid2, NULL, funsend, NULL )
pthread_create( &tid3, NULL, funsend, NULL )
。。。}
void* funsend()
{。。。
for(i=0;i<100;i++)
send();
。。。
}
都用同一个funsend函数 如果一个包要发送100次的话 是不是在funsend里send()100次就可以了呢
justkk 2010-09-09
  • 打赏
  • 举报
回复
那就创建几个一模一样的线程同时执行就可以了..
线程采用socket机制连接服务器,收发报文..
agedmagician 2010-09-09
  • 打赏
  • 举报
回复
回复楼上 我想多线程并发 一起发包 不管有没有回应都继续发 因为这个一个测试程序嘛
justkk 2010-09-09
  • 打赏
  • 举报
回复
我觉得可以,实际验证一下就行了
justkk 2010-09-08
  • 打赏
  • 举报
回复
你使用多线程的意图是什么呢?
像2楼说的,这个完全可以用单线程方式来写
agedmagician 2010-09-08
  • 打赏
  • 举报
回复
各位能说的详细些吗 小弟初学
我希望是 比如创建10个线程 每个线程都发送 如果等几秒没有接受到回复消息就打印告知 然后继续发送
发送的结构大概有10多种
shamg2 2010-09-08
  • 打赏
  • 举报
回复
如果要用多线程实现,也不是不可以,创建10个线程,每个线程发送固定的结构类型的消息,根据需求设置频率不同,进行发送。
快乐田伯光 2010-09-08
  • 打赏
  • 举报
回复
如果只是发送结构类型的消息,看不出有什么必要用多线程,单进程单线程不是更好吗?
justkk 2010-09-08
  • 打赏
  • 举报
回复
多个线程同时发送,模拟多个客户端呗..

23,121

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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