在源码中有一些起线程的例子,使用的接口是 CreateThread(),其实也可以用 pthread_create()。
前者用在 Windows 环境中,后者用在 Linux 环境中,在 MSYS2 64位中试了一下,都可以,可能是 MSYS2 环境集成了以上两个环境,能更好的兼容吧,建议还是按照 OS 来选择合适的接口。
如:
Windows 中
thread_handle = CreateThread(NULL, 0, &thread_process, NULL, 0, NULL);
Linux 中
pthread_t id;
ret = pthread_create(&id, NULL, thread_process, NULL);
pthread_join(id, NULL);