Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我在 main 中有创建 10 个线程的 C 代码。然后我加入这些线程。
每个线程都去一个这样的函数:
void test_function(char *findThis) { // do something // then something like this if message cancel thread? }
该消息可能是一个布尔全局变量。之后如何取消线程?
在 C 中,线程执行特定的函数。如果您从该函数返回,则它不再存在。
因此,如果您希望线程停止,只需从该函数返回,如下所示 -
if (got_my_message) { return; }
当然,您应该在执行此操作之前执行必要的资源清理(即,释放分配的内存)。