学妹问我什么是句柄?

Posted chenry777

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学妹问我什么是句柄?相关的知识,希望对你有一定的参考价值。

句柄就是个数字,一般和当前系统下的整数的位数一样,比如32bit系统下就是4个字节。这个数字是一个对象的唯一标示,和对象一一对应。这个对象可以是一个块内存,一个资源,或者一个服务的context(如 socket,thread)等等。这个数字的来源可以有很多中,只要能保证和它代表的对象保持唯一对应就可以,比如可以用内存地址,也可以用句柄表的序号,或者干脆用一个自增ID,再或者用以上的值去异或一个常数。传统上操作系统内核和系统服务API都是 C 语言接口的,但是其内部设计理念上又是OO的,所以有对象概念却没有对应的语言语法支持。句柄的作用就是在 C 语言环境下代替 C++ 的对象指针来用的。创建句柄就是构造,销毁句柄就是析构,用句柄调用函数相当于传入this指针。如果有系统API是 C++ 接口的,那么就没有句柄了,而是某个接口指针,IXXXPtr之类的,比如Windows的com ptr。

以上是关于学妹问我什么是句柄?的主要内容,如果未能解决你的问题,请参考以下文章

学妹问我,并发问题的根源到底是什么?

学妹问我zookeeper的特性?

学妹问我双亲委派机制到底是个什么东西?

学妹问我:有什么好用的测试框架吗?

学妹问我:当打开 CSDN,到网页显示,其间发生了什么?

学妹问我Java枚举类与注解,我直接用这个搞定她!