再续socket多线程问题(有源代码)
各位大侠,这是小弟写的一段小程序,是以CHAT为蓝本,在上面自己添加了一些代码,主要是想用多线程编写一段有关SOCKET传送数据的程序.SERVER中有CodeThread,DecodeThread,Trans_dataThread三个线程,数据在CodeThread线程中把数据库中的数据进行处理,然后在Trans_dataThread线程中以流方式发送数据.CLIENT主要是接收数据,并把数据显示在3个EDIT控件里.现在小弟遇到几个问题:
1.SERVER只能发送一个数据流,在发送下一个数据流时要报错.我用debug调试时,发现它在执行str->Write(&mysocket,framelength)时报错.是不是由于上一个str还没有发送完毕?但是我已经做了线程的同步,是不是在线程同步方面还做的不正确?我如何知道Trans_dataThread线程中数据已经发送出去,并且可以结束线程,释放出str,能够给下一个CodeThread线程对str进行操作?各位大侠能不能帮小弟指
点一二.最好能给出小弟一些源代码.
2.SERVER程序调试一阵后,总要报错"stack overflow".小弟想是不是由于线程没有删除,但小弟不是写了些Terminate()的函数吗?
3.SERVER发送出数据流后,如何在EDIT3控件里显示出"NAME"字段的字符串?
小弟刚刚入门,但对builder很是感兴趣,多谢各位大侠指教.
其它的一些说明在我提出的"socket多线程问题"中大家可以找到.