24小时热门版块排行榜    

CyRhmU.jpeg
查看: 961  |  回复: 5

tju_dongla

金虫 (小有名气)

[求助] 关于socket异步通信中的问题已有1人参与

beginconnect的回调函数中这么写,会卡住:
private void connectcallback(IAsyncResulte ar)
{
try{Socket client=(Socket)ar.IAsyncState;
client.EndConnet(ar);
addtoListBox("连接成功";
connectDone.Set();
}
catch
{
}
addtoListbox()语句如果在connectDone.Set()的前面,就无法执行。相反就可以。connectDone.WaitOne()在beginConnect函数的后面。
求大神们解释啊
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

angiehelen

金虫 (小有名气)

【答案】应助回帖

不清楚你connectDone.Set()的作用是什么,但你的addtoListBox函数的作用是不是把字符串的内容添加到列表框中,而列表框是在主线程里创建的?如果列表框中在主线程创建,需要进行额外的处理
心只一拳,别把它想的太大
2楼2013-05-31 23:28:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tju_dongla

金虫 (小有名气)

引用回帖:
2楼: Originally posted by angiehelen at 2013-05-31 23:28:04
不清楚你connectDone.Set()的作用是什么,但你的addtoListBox函数的作用是不是把字符串的内容添加到列表框中,而列表框是在主线程里创建的?如果列表框中在主线程创建,需要进行额外的处理

connectDone.Set()是阻塞主线程的。addtoListBox函数我已经使用委托了。我后来想,估计是因为listBox是主线程中的控件,即使使用委托,主线程阻塞了,也是不可行的。
现在我又有新问题了,一个程序里面,可以建立多个socket的对象吧,每个对象可以建立自己的连接。那他们是不是不需要独立的回调函数啊?如果把两个连接接收的内容分开,是不是要使用各自的回调函数。
3楼2013-06-05 17:01:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

angiehelen

金虫 (小有名气)

【答案】应助回帖

内容已删除
心只一拳,别把它想的太大
4楼2013-06-06 13:46:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ikobe

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by angiehelen at 2013-05-31 23:28:04
不清楚你connectDone.Set()的作用是什么,但你的addtoListBox函数的作用是不是把字符串的内容添加到列表框中,而列表框是在主线程里创建的?如果列表框中在主线程创建,需要进行额外的处理

您好  请求您的帮忙,   利用socket编程实现两台计算机之间通信,实现双方互发字符串的功能  您能在网上找到相关程序么?  我是外行,忽然需要用到,实在不知道怎么办了   谢谢啦,感激不尽....
5楼2014-05-06 21:47:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

angiehelen

金虫 (小有名气)

【答案】应助回帖

引用回帖:
5楼: Originally posted by ikobe at 2014-05-06 21:47:46
您好  请求您的帮忙,   利用socket编程实现两台计算机之间通信,实现双方互发字符串的功能  您能在网上找到相关程序么?  我是外行,忽然需要用到,实在不知道怎么办了   谢谢啦,感激不尽.......

我这里有vs2005编的一些小程序,里面包含了同步、异步通信和TCP,UDP方式,希望对你有所帮助

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : Socket编程.zip
  • 2014-05-07 13:58:29, 154.67 K
心只一拳,别把它想的太大
6楼2014-05-07 13:58:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 tju_dongla 的主题更新
信息提示
请填处理意见