与c++相比,高效的Win32内核对象更受青睐
Efficient Win32 Kernel Objects to be preferred over c++
作为一名c++程序员,我尽量坚持标准,如果不可能,我会尝试使用boost或其他一些可移植的lib。总而言之,我喜欢编写可移植代码。现在,Windows SDK允许您访问内核对象,作为优化的一部分,这可能会导致更快的代码。我想知道你喜欢使用哪些内核对象来提高效率?
一个例子是Critical_Section,但我认为当使用boost::threads或c++11并发时,这是Windows上互斥锁的默认选择。当然,坚持进程内并发。
让我们暂时不考虑GUI编程。为此,我喜欢Qt,它已经足够好了。
通常内核对象的效率不会更高。它们占用更多的RAM,并且使用它们需要昂贵的上下文切换。
关键部分是混合的,它们实际上试图保持在用户模式,只有在绝对需要的情况下才创建内核模式信号量。
您的C++标准库可能会松散地包装您的平台最有效的方法。首先进行基准测试。
相关文章:
- 什么时候调用组成单元对象的析构函数
- 对RValue对象调用的LValue ref限定成员函数
- CMake-按正确顺序将项目与C运行时对象文件链接
- 空基优化子对象的地址
- 将对象数组的引用传递给函数
- 你能重载对象变量名本身返回的内容吗
- C++使用整数的压缩数组初始化对象
- 分段错误(内核转储) C++面向对象编程
- OPENCL:可以将模板对象作为内核参数,并使用boost :: Compute
- 通过复制将对象传递给 CUDA 内核会调用其析构函数并过早释放内存
- 如何将Class对象传递给CUDA内核
- 具有虚拟继承传递到CUDA内核函数的对象
- 获取所有Windows内核对象及其安全权
- 在 cuda 内核中声明 CPP 对象
- 如何从wow64进程中检索特定内核对象的64位地址
- 将C++对象传递给 CUDA 内核
- 如何在进程之间共享内核对象,例如可等待计时器
- 如何获取内核对象的安全描述符
- 与c++相比,高效的Win32内核对象更受青睐
- 不可压缩的指针类型将int传递给内核对象中void(*)(void)类型的形参