delphi 中使用socket和多线程时和输入法切换冲突的怪异问题:
在delphi中用到socket的一些组件(比如TClientSocket,TSocketConnection等),并且这些组件设置未 notBlocking模式/supportCallback时,如果程序有多线程在运行(循环或者suspend),这是如果在程序中可以输入的地方切 换输入法,则回造成程序失去反应。再测试,发现在线程中不进行涉及到socket时好像不会出现上面的问题。不知道是不是消息冲突什么的造成的。
在delphi中用到socket的一些组件(比如TClientSocket,TSocketConnection等),并且这些组件设置未 notBlocking模式/supportCallback时,如果程序有多线程在运行(循环或者suspend),这是如果在程序中可以输入的地方切 换输入法,则回造成程序失去反应。再测试,发现在线程中不进行涉及到socket时好像不会出现上面的问题。不知道是不是消息冲突什么的造成的。