多线程简单实例
来源:互联网 发布:获取访客手机号码源码 编辑:程序博客网 时间:2024/06/03 16:18
线程:
线程,有时被称为轻量级进程(Lightweight Process,LWP),是程序执行流的最小单元。
一个标准的线程由线程ID,当前指令指针(PC),寄存器集合和堆栈组成。
线程是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点儿在运行中必不可少的资源,
但它可与同属一个进程的其它线程共享进程所拥有的全部资源。
一个线程可以创建和撤消另一个线程,同一进程中的多个线程之间可以并发执行。由于线程之间的相互制约,致使线程在运行中呈现
出间断性。
线程也有就绪、阻塞和运行三种基本状态。
每一个程序都至少有一个线程,若程序只有一个线程,那就是程序本身。
线程是程序中一个单一的顺序控制流程。进程内一个相对独立的、可调度的执行单元,是系统独立调度和分派CPU的基本单位指运行中
的程序的调度单位。
在单个程序中同时运行多个线程完成不同的工作,称为多线程。
多线程
具有多线程能力的计算机因有硬件支持而能够在同一时间执行多于一个线程,进而提升整体处理性能。具有这种能力的系统包括对称多处理机、 多核心处理器以及芯片级多处理(Chip-level multithreading)或同时多线程(Simultaneous multithreading)处理器。
代码例:
#include <windows.h>#include <process.h>#include <stdio.h>void process(void *p){ int *px = (int *)p; char str[10] = { 0 }; sprintf(str, "线程%d启动", *px); //打印字符串进字符数组 MessageBoxA(0, str, "多线程实例", 0);}void main(void){ for(int i=0; i<5; i++) { _beginthread(process, 0, &i); Sleep(10); //创建线程需要时间,否则出现多个线程创建共用一次循环中的i值 } system("pause");}
运行结果:
阅读全文
0 0
- 多线程操作简单实例
- 简单多线程实例
- C++多线程简单实例
- C#多线程简单实例
- 简单的多线程实例
- WPF多线程简单实例
- 多线程简单实例
- window多线程简单实例
- 简单多线程通信实例
- c++ 简单多线程实例
- Java多线程简单实例
- 多线程简单实例
- Python简单多线程实例
- 多线程简单实例
- C#多线程编程简单实例
- 串口通信++++多线程简单实例
- C++多线程编程简单实例
- C++多线程编程简单实例
- (二)静态链表
- 十一个行为型模式5:中介者模式-Mediator Pattern【学习难度:★★★☆☆,使用频率:★★☆☆☆】
- codewars解题笔记 —— 数组的判断
- Java笔记--09
- 同是毕业两年
- 多线程简单实例
- [BZOJ1097][POI2007]旅游景点atr(状压dp)
- 2. Add Two Numbers
- 变态跳台阶
- 一入C中深似海0.1
- Kotlin极简教程:第5章 集合类
- 简单验证码生成
- CentOS Linux解决Device eth0 does not seem to be present
- linux -mongodb 启动问题(Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed : )