【发布时间】:2010-12-08 20:33:06
【问题描述】:
一些信息:我必须编写一个控制某些设备的程序(这是基本功能)。但我必须编写某种插件系统来启用其他自定义功能。我无法控制这些插件的源质量,所以我想我将为每个加载的插件创建一个线程,然后它将在它自己的主循环中运行。我能够捕获标准 C++ 异常,但问题是我不知道如何处理信号。最好的方法是异步取消插件的线程,让他有机会清理和释放资源,或者干脆杀死他,但不知道如何找出哪个线程导致当前信号。有没有办法在不明确将当前执行的线程信息保存在某个变量中的情况下做到这一点?或者这完全是个坏主意,我应该创建单独的进程然后运行插件?
【问题讨论】:
标签: multithreading posix kill signals