两个线程A,B
在A中导入动态连结库lib.dll
B中调用了动态连结库lib.dll中一个很耗时间的函数timeout().
现在如果A杀掉了B,
那么lib.dll中的timeout()是否仍然在执行中??
A是否还能继续调用timeout() ??

解决方案 »

  1.   

    线程结束后,lib.dll中的timeout()自然就不再执行了,而且,A中还可以继续调用timeout()除非你的timeout()使用前或使用中需要做什么特殊处理,否则应该是不会有什么问题的
      

  2.   

    timeout()在开始的时候打开了某些文件句柄
    直到最后执行结束才会释放掉.
    那么如果在执行过程中B线程结束了,它能够自动释放所占用的文件句柄吗?
      

  3.   

    timeout不执行了,
    a中可以再调用dll的。
    不过如果timeout是不可重入的函数,就要小心了。
      

  4.   

    timeout不执行了,
    a中可以再调用dll的。
    不过如果timeout是不可重入的函数,就要小心了。powercy的意思是不是说timeout实际上还在运行,所以才不可重入呢?