TrustClient 相关

1) win api使用宏控制

1
2
3
#ifdef Q_OS_WIN
#include <Windows.h>
#endif

内存相关

函数段

  1. 申请内存
1
2
3
4
5
6
7
8
void *zallloc(size_t len) {
void *p = malloc(len);
if(p) {
memset(p, 0, len);
}

return p;
}

常用的宏

1
2
3
4
#define safe_free(p) {\
free(p);\
p = NULL;\
}\

线程的资源竞争

  1. 链表、边界资源、临界区域的操作一定要加锁
1
2
3
4
5
6
7
8
std::mutex mtx; // 保护counter

mtx.lock();

// 要进行的资源操作
todo();

mtx.unlock();