防止程序无响应

来源:互联网 发布:24周胎儿发育标准数据 编辑:程序博客网 时间:2024/05/01 03:13

     一般来说程序的无响应是因为UI线程(主线程)在执行一个重量级操作。 可以通过以下方法避免:

1    开一个子线程去出去,通过消息告诉上层。

2   主线程把耗时操作分开, 每操作一段时间,通过postmessage打断当前堆栈,给UI线程留出CPU时间片, 然后自己在下一个消息中继续处理。

   比如要处理1万的人的信息,每个人的信息处理可能需要10ms,如果一次处理完,就需要100秒,主线程直接无响应,这时就可以通过消息来打断堆栈。


原创粉丝点击