功能:把一个函数创建为一个线程
CreateThread(
_In_opt_ LPSECURITY_ATTRIBUTES lpThreadAttributes,
_In_ SIZE_T dwStackSize,
_In_ LPTHREAD_START_ROUTINE lpStartAddress,
// 线程函数的参数
_In_opt_ __drv_aliasesMem LPVOID lpParameter,
_In_ DWORD dwCreationFlags,
_Out_opt_ LPDWORD lpThreadId
);
整个进程只有一个进程。Windows程序缺省只有一个线程(主线程,main线程)
整个线程至少有2个线程,主线程和一个用户线程
程序的多个功能需要并发执行
每个功能都创建为一个线程,从而实现多个功能的兵法
提高窗口程序的交互性
后台计算的特点:很耗时的函数
POSIX标准p1003.1c定义Linux线程库(Pthreads)
应用特点
#include <pthreads.h>
pthread_function()
线程的创建pthread_create
__API_AVAILABLE(macos(10.4), ios(2.0))
#if !_PTHREAD_SWIFT_IMPORTER_NULLABILITY_COMPAT
int pthread_create(pthread_t _Nullable * _Nonnull __restrict,
const pthread_attr_t * _Nullable __restrict,
void * _Nullable (* _Nonnull)(void * _Nullable),
void * _Nullable __restrict);
参数:
参数 | 意义 |
---|---|
thread | 返回的线程句柄 |
attr | 指定的线程属性 |
ThreadFunction | 线程函数的入口地址 |
arg | 线程函数的参数 |
原文:https://www.cnblogs.com/iamfatotaku/p/12548817.html