# WinUtil Tools for Windows Program Developing. ## `class SharedMemory` 共享内存类 构造时可选择打开或新建共享内存,通过名称指定共享内存,传入参数以创建共享内存. 析构时会自动关闭或释放共享内存 主要API: `bool isReady() const` 用于检查共享内存是否就绪 `void* get()` 返回共享内存. 该内存有效长度为创造时指定的长度. ## `class NamedMutex` 命名互斥量 构造时可选择获取或新建命名互斥量,通过create参数指定,默认为打开. 析构时仅清理句柄资源,不会改变互斥量的状态. 主要API: `bool isReady() const` 用于检查命名互斥量是否正确打开(句柄检查) `DWORD getError() const` 获取上一次WINAPI操作的错误码 `int wait()` 等待互斥量就绪(如果互斥量当前不被本线程占有,则等待直到本线程获取到互斥量) `int wait_for(int ms)` 等待互斥量就绪,最多等待ms毫秒. 返回值: 1 成功获取到互斥锁 0 超时 -1 出现错误(此情况会重置错误码) `void release()` 释放互斥量