GDI对象 内核对象

GDI对象有单一的拥有者,而核心对象可以有一个以上的拥有者,甚至跨进程,核心对象保持了一个引用计数,以记录有多少handle对应此对象。对象中也记录了哪个进程或者线程是拥有者。
线程对象与线程的不同:线程的handle是指向线程核心对象,而不是指向线程本身。closehandle唯一所做的事情是把引用计数减一,如果该值为0,对象就会自动被操作系统销毁。线程核心对象引用的那个线程也会令核心对象开启,因此
线程对象引用计数是2,当调用closehandle时引用计数下降1,当线程结束时,引用计数再降1,只有两件事情都发生了的时候,这个对象才会被真正消除。

你可能感兴趣的:(GDI对象 内核对象)