使用C++可以让程序交替运行两个程序,基于进程的多任务处理和同一程序片段的并发执行。
此外,笔者在进行多线程编程中使用的是Linux操作系统。
首先,可以创建一个线程。
#include <pthread.h>
pthread_create (thread, attr, start_routine, arg)
thread是指向线程标识符的指针。比如线程的tid的地址。
attr可以用来设置线程属性,可以指定线程属性对象,也可以使用默认值NULL。
start_routine 线程运行函数起始地址,一旦线程被创建就会执行,这个为函数指针。
arg为运行函数的参数。必须通过把引用作为指针强制转化为void类型进行传递。如果没有传递参数就使用NULL。
如果创建线程成功,函数就返回0,如果返回不是0就会创建失败。
终止线程:
pthread_exit(status)用于显式的退出一个线程,当线程完成工作时不需要存在时被调用。
先touch一个文件,再用vim编译器编译,
再用 -lpthread库编译这个程序:
g++ test.cpp -lpthread -o test.o
将其转化为可执行文件,然后
./test.o
最后输出为
这个创建了5个线程,并接受输入的参数。