请教,我编写的多线程的Sock服务器端程序,在窗体关闭时由于各线程中的Sock连接没有关闭,导致整个程序进程未关闭,我不知道怎么关掉那些子线程。

解决方案 »

  1.   

    线程的生命周期取决于主进程的生命周期,你只需要在关闭程序的同时关闭所有socket
    连接即可。
      

  2.   

    对不起,我的程序的方式是使用一个Socket监听,收到一个请求建立一个Socket连接,该连接一直与客户端进行通信,如果有两分钟没有受到信息自动关闭,所以在主应用关闭的时候无法知道那些线程是正在运行的,在这种情况下如何关闭所有的线程呢?由于有线程正在使用,导致整个进程没有被关闭,在主应用关闭后,只能用在任务管理器中杀掉该进程了
      

  3.   

    你可以尝试主线程关闭时发个自定义消息 让线程强行杀掉自己就可以你可以在主线程的onterminate里发送 线程终止时触发  
    强行关闭 也可以用terminatethread()