在我们启动程序的时候,如果我们没有开启多线程的情况下,默认我们的程序就是单线程,是串行执行的。
如果开启了多线程那么我们有的程序语句就可以并行执行了。单核情况下还是并发,多核情况下可以并行。
就记住一点,单线程是由上往下顺序串行,多线程可以同时执行很多语句,可以多核并行,就可以大大的缩短代码执行的时间。
下面简单介绍一些线程的基础操作:
线程开启:
1、引用线程库:#include <thread> #include <process.h>
2、声明并定义函数
3、Thread thread1(函数名,函数形参1,函数形参2......)
如果在main中使用线程,记得要在线程下面加上线程名.join()
这个join()的意思就是在程序结束的时候查看是否有线程还在执行,如果这个线程还没有结束,则等待线程结束之后再进行程序结束。
避免线程还在执行而整个程序结束。
上面只是介绍的线程最简单的两个操作,开启线程,等待结束。
至于线程当然还有很多方面的知识,如多个线程竞争一个资源产生的线程安全问题,线程池的使用,线程等待,线程锁等等,目前接触还比较少,会慢慢去了解并记录到CSDN中。
以此笔记!