C语言-获得进程或线程ID函数
来源:互联网 发布:从u盘安装linux 编辑:程序博客网 时间:2024/05/16 06:28
1 获得进程ID:
C语言getpid函数简介
函数功能:取得进程识别码
相关函数:fork,kill,getpid
头文件:旧版本:unistd.h,在VC++6.0下可以用process.h
函数原型:旧的原型为pid_t getpid(void);,推荐使用int _getpid( void );这种形式。注意,函数名第一个字符是下划线。
函数说明:getpid函数用来取得目前进程的进程识别码,许多程序利用取到的此值来建立临时文件,以避免临时文件相同带来的问题。
返回值:目前进程的进程识别码
fork – 创建新进程;exit – 终止进程;exec – 执行一个应用程序wait – 将父进程挂起,等待子进程终止;getpid – 获取当前进程的PID;nice – 改变进程的优先
编辑本段程序示例 示例一:[1]
#include <stdio.h>
#include <process.h>
int main( void )
{
/* If run froom command line, shows different ID for
* command line than for operating system shell.
*/
printf( "Process id: %d\n", _getpid() );
}
示例二:
#include<unistd.h>
main()
{
printf(“pid=%d\n”,getpid());
}
执行:
pid=1494 /*每次执行结果都不一定相同*/
2 获得线程ID:
获取当前线程的ID很简单:
1 调用GetCurrentThreadId()函数即可;
2 在创建线程的时候就知道了:如 m_hThread = ::CreateThread(NULL, 0, MyThreadProc, this, 0, &m_threadID);//最后一个参数就是线程ID
另外,你想出现的是交错的顺序也很简单,就是做好互斥工作就是了,在线程的相应位置调用WaitForSingleObject();不要忘了解锁即可,我是用SetEvent();最好后面加上Sleep(10);这样看到的效果就更明显了!
GetCurrentThreadId
函数功能描述:该函数返回当前线程的ID
函数原型
DWORD GetCurrentThreadId(VOID) //DWORD(Double Word)双字 输出采用%lu
参数
该函数没有参数
返回值
返回值是当前线程的ID
备注[该处可以加上自己的使用经验]
线程ID是线程在系统全局范围内的唯一标示。
使用环境[包括适合WINDOWS的版本、所需头文件、所需链接库]
Windows NT: 要求3.1或更高版本
Windows: 要求windows 95或更高版本
Windows CE: 要求1.0或更高版本。
头文件 winbase.h. //在我的使用情况下,实现windos.h,应该windos.h也包含了winbase.h
库文件 kernel32.lib //在我的使用情况下,不用包括这个库文件
示例代码段
char sztmp[256];
DWORD dwThreadId=GetCurrentThreadId();
wsprintf(sztmp,"当前线程ID为:%.8X",dwThreadId); //在我的使用情况下,使用%lu
函数功能描述:该函数返回当前线程的ID
函数原型
DWORD GetCurrentThreadId(VOID) //DWORD(Double Word)双字 输出采用%lu
参数
该函数没有参数
返回值
返回值是当前线程的ID
备注[该处可以加上自己的使用经验]
线程ID是线程在系统全局范围内的唯一标示。
使用环境[包括适合WINDOWS的版本、所需头文件、所需链接库]
Windows NT: 要求3.1或更高版本
Windows: 要求windows 95或更高版本
Windows CE: 要求1.0或更高版本。
头文件 winbase.h. //在我的使用情况下,实现windos.h,应该windos.h也包含了winbase.h
库文件 kernel32.lib //在我的使用情况下,不用包括这个库文件
示例代码段
char sztmp[256];
DWORD dwThreadId=GetCurrentThreadId();
wsprintf(sztmp,"当前线程ID为:%.8X",dwThreadId); //在我的使用情况下,使用%lu
- C语言-获得进程或线程ID函数
- GetWindowThreadProcessId 获得窗口所在进程ID和线程ID
- GetWindowThreadProcessId 获得窗口所在进程ID和线程ID
- VC 根据线程句柄获得线程ID 根据线程句柄获得进程ID
- 函数-从进程名获得进程ID、从进程ID获得进程路径
- 获取进程和线程id函数简介
- 获得线程的 ID
- C/C++ 获取Linux线程ID与进程ID
- 通过进程ID或进程名,获得创建进程的信息(PerformanceCounter)
- 获得进程ID,关闭进程。
- 获取进程或线程的ID以及句柄信息
- Windows API详解——GetWindowThreadProcessId 获得窗口所在进程ID和线程ID
- 系统移植:获得进程id
- C语言获得函数的执行时间
- C语言获得数组长度的函数
- 【C语言】【unix c】如何获得进程自己的PID
- Linux下获得线程ID
- 进程和线程句柄和ID之间转换函数
- 题目1023:EXCEL排序
- 从100PV到1亿级PV网站架构演变
- android 界面布局 很好的一篇总结 【转】
- Qt 项目生成的流程例图
- 同步通信和异步通信以及传输率
- C语言-获得进程或线程ID函数
- java线程学习心得二之线程的两种创建方式以及优异
- Ajax(4):post请求之表单中含有中文时如何处理
- 最近要把php捡一下
- 14.1 - Function templates
- 什么是java序列化,如何实现java序列化?
- servlet工作原理解析
- Android 图片平铺实现方式
- 某大型银行深化系统之三:标准规范