CloseHandle函数---核心对象

【1】  CloseHandle函数处理不再使用的核心对象。这是因为,一个核心对象,在被创建出来以后,可以被多个拥有者拥有,核心对象是由操作系统来处理的,因此,可以跨线程,跨进程。

    为了实现这种特性,对于核心对象,有一个“引用计数”的计数,具体地说就是:跟随一个核心对象的还有一个整数,在核心对象被创建出来时,这个数为1,其他的拥有者通过某种方式“拥有”了这个对象,这个数值加1;当拥有者释放了其拥有权时,该数减1;当该数为0时,表示没有任何拥有者拥有该对象,则操作系统负责销毁该对象。整个过程是操作系统负责的,对程序员来说是透明的。

    CloseHandle函数的作用是负责释放某个拥有者对核心对象的拥有权(计数减1)。其函数原型如下:BOOLCloseHandle(HANDLE hObj)。

  【2】 什么是核心对象

    从编程语言的角度来说,一个核心对象实际上是一个整数值。用数据类型HANDLE表示;

    对于Windows操作系统来说,一个核心对象所代表的远远不止这些。核心对象其实就是一个“对象”,代表着某种事物,该对象由操作系统负责管理,围绕某种对象,通常有一组API函数负责完成常见的功能。常见的核心对象有下面几种:

    [1]Process    [2] Thread    [3] File    [4] Event    [5] Semaphore    [6] Mutex    [7] Named Pipe    [8] Anonymous Pipe

    CreateThread函数返回了一个线程核心对象...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值