第一个线程和运行时创建的其他线程有区别吗?因为我有一个使用longjmp中止的程序,并且线程应该能够终止程序(退出或中止在我的情况下不起作用)。我可以安全地使用pthread_kill_other_threads_np,然后longjmp?
我不知道你在说什么平台,但pthread_kill_other_threads_np
不是标准功能,也不是一个远比free_all_malloced_memory
更合理的操作。进程终止本质上涉及到所有线程相对于彼此的自动终止(它们看不到彼此的终止)。
对于longjmp
,虽然longjmp
没有任何问题,但您不能使用它跳转到不同线程中的上下文。
听起来你这里有XY问题;您已经询问了您是否可以使用(或如何使用)特定的工具,这些工具不是您想要的任何正确的工具,而没有实际解释您的约束是什么。