摘要:摘要在 Microsoft Windows 平台上有几种以原子方式锁定代码和数据的不同方法。此白皮书的主要目的是向开发人员简要介绍 Windows 中进行锁定的不同方法以及与这些锁定有关的相应性能开销。因为未来架构将是多核架构,因此此信息非常适用。简介多线程软件应用对于提升英特尔内核架构的性能至关重要。锁定代码通常是多线程应用中运行最频繁的代码。确定要使用的锁定方法与确定应用中并行处理一样重要。此白皮书的主要目的是向开发人员简要介绍 Windows 中进行锁定的不同方法以及与这些锁定有关的相应性能开销。Window 的某些锁定 API 可能会跳转至操作系统内核。此白皮书将详细说明跳转至内核的
阅读全文
摘要:在Windows程序设计中WinAPI也为我们提供了类似的函数,它们就是WinExec()和ShellExecute(),下面就来讨论一下这两个函数的用法。1)WinExec() 函数原型:UINT WinExec(LPCSTR lpCmdLine,UINT uCmdShow);参数说明:(激活的意思是能接受焦点,即标题栏变成蓝色)lpCmdLine:以0结尾的字符串,命令行参数。uCmdShow:新的应用程序的运行方式。其取值如下:SW_HIDE 隐藏 SW_MAXIMIZE 最大化 SW_MINIMIZE 最小化,并把Z order顺序在此窗口之后(即窗口下一层)的窗口激活SW_RESTO
阅读全文
摘要:BOOL RegisterHotKey( HWND hWnd, //响应该热键的窗口句柄 Int id, //该热键的唯一标识 UINT fsModifiers, //该热键的辅助按键 UINT vk //该热键的键值 ); 为了得到唯一标识,我们还将用到另一个API函数 ATOM GlobalAddAtom( LPCTSTR lpString //自己设定的一个字符串 ); 因为我们还要在程序退出的时候,消除这个热键, 所以需要声明一个全局变量: HotKeyId: Integer; 第一步: 在窗口的create事件中,加入以下代码 HotKeyId := GlobalAddAtom...
阅读全文