Skip to content

Commit c865b3b

Browse files
author
wangwj-f
committed
修改公共类的命名空间
1 parent 4122d71 commit c865b3b

8 files changed

+54
-28
lines changed

include/classmemorytracer.h

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
/*////////////////////////////////////////////////////////////////////
1+
/*
22
@Brief: 追踪C++类的内存分配和释放
33
@Author: vilas wang
4-
@Contact: QQ451930733|[email protected]
4+
@Contact: QQ451930733
55
66
【用法】
77
@@ -18,7 +18,7 @@ A() { TRACE_CLASS_CONSTRUCTOR(A); }
1818
1919
3: 最后等需要知道类内存分配和释放情况的时候(比如程序退出前)打印信息
2020
TRACE_CLASS_CHECK_LEAKS();
21-
///////////////////////////////////////////////////////////////////////////////////////*/
21+
*/
2222

2323
#pragma once
2424
#include <windows.h>
@@ -29,29 +29,29 @@ TRACE_CLASS_CHECK_LEAKS();
2929

3030
#ifndef TRACE_CLASS_CONSTRUCTOR
3131
#ifdef TRACE_CLASS_MEMORY_ENABLED
32-
#define TRACE_CLASS_CONSTRUCTOR(T) VCUtility::ClassMemoryTracer::addRef<T>()
32+
#define TRACE_CLASS_CONSTRUCTOR(T) VCUtil::ClassMemoryTracer::addRef<T>()
3333
#else
3434
#define TRACE_CLASS_CONSTRUCTOR(T) __noop
3535
#endif
3636
#endif
3737

3838
#ifndef TRACE_CLASS_DESTRUCTOR
3939
#ifdef TRACE_CLASS_MEMORY_ENABLED
40-
#define TRACE_CLASS_DESTRUCTOR(T) VCUtility::ClassMemoryTracer::release<T>()
40+
#define TRACE_CLASS_DESTRUCTOR(T) VCUtil::ClassMemoryTracer::release<T>()
4141
#else
4242
#define TRACE_CLASS_DESTRUCTOR(T) __noop
4343
#endif
4444
#endif
4545

4646
#ifndef TRACE_CLASS_CHECK_LEAKS
4747
#ifdef TRACE_CLASS_MEMORY_ENABLED
48-
#define TRACE_CLASS_CHECK_LEAKS() VCUtility::ClassMemoryTracer::checkMemoryLeaks()
48+
#define TRACE_CLASS_CHECK_LEAKS() VCUtil::ClassMemoryTracer::checkMemoryLeaks()
4949
#else
5050
#define TRACE_CLASS_CHECK_LEAKS() __noop
5151
#endif
5252
#endif
5353

54-
namespace VCUtility {
54+
namespace VCUtil {
5555

5656
class ClassMemoryTracer
5757
{

include/lock.h

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,25 @@
1+
/*
2+
@Brief: windowsËø
3+
@Author: vilas wang
4+
@Contact: QQ451930733
5+
*/
6+
17
#pragma once
28
#include <windows.h>
39
#include <memory>
410

5-
namespace VCUtility {
11+
namespace VCUtil {
12+
613
//Class CSLock - ¹Ø¼ü¶ÎËø
714
class CSLock
815
{
916
public:
1017
CSLock();
1118
~CSLock();
1219

13-
void lock();
14-
bool tryLock();
15-
void unlock();
20+
virtual void lock();
21+
virtual bool tryLock();
22+
virtual void unlock();
1623

1724
private:
1825
CSLock(const CSLock &);
@@ -29,8 +36,9 @@ namespace VCUtility {
2936
SRWLock();
3037
~SRWLock();
3138

32-
void lock(bool bShared = false);
33-
void unlock();
39+
virtual void lock(bool bShared = false);
40+
virtual bool tryLock(bool bShared = false);
41+
virtual void unlock();
3442

3543
private:
3644
SRWLock(const SRWLock &);

include/networkdef.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ Q_DECLARE_METATYPE(RequestTask);
119119
typedef QVector<RequestTask> BatchRequestTask;
120120

121121

122-
inline const QString getTypeString(RequestType eType)
122+
inline const QString getTypeString(const RequestType eType)
123123
{
124124
QString strType;
125125
switch (eType)

include/networkmanager.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/*
22
@Brief: Qt multi-threaded network module
33
@Author: vilas wang
4-
@Contact: QQ451930733|[email protected]
4+
@Contact: QQ451930733
55
66
The Qt multi-threaded network module is a wrapper of Qt Network module, and combine with thread-pool to realize multi-threaded networking.
77
- Multi-task concurrent(Each request task is executed in different threads).

src/classmemorytracer.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
#include <vector>
44
#include <algorithm>
55

6-
namespace VCUtility
6+
namespace VCUtil
77
{
88
CSLock ClassMemoryTracer::m_lock;
99
ClassMemoryTracer::TClassRefCount ClassMemoryTracer::s_mapRefCount;

src/inc/classmemorytracer.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,29 +29,29 @@ TRACE_CLASS_CHECK_LEAKS();
2929

3030
#ifndef TRACE_CLASS_CONSTRUCTOR
3131
#ifdef TRACE_CLASS_MEMORY_ENABLED
32-
#define TRACE_CLASS_CONSTRUCTOR(T) VCUtility::ClassMemoryTracer::addRef<T>()
32+
#define TRACE_CLASS_CONSTRUCTOR(T) VCUtil::ClassMemoryTracer::addRef<T>()
3333
#else
3434
#define TRACE_CLASS_CONSTRUCTOR(T) __noop
3535
#endif
3636
#endif
3737

3838
#ifndef TRACE_CLASS_DESTRUCTOR
3939
#ifdef TRACE_CLASS_MEMORY_ENABLED
40-
#define TRACE_CLASS_DESTRUCTOR(T) VCUtility::ClassMemoryTracer::release<T>()
40+
#define TRACE_CLASS_DESTRUCTOR(T) VCUtil::ClassMemoryTracer::release<T>()
4141
#else
4242
#define TRACE_CLASS_DESTRUCTOR(T) __noop
4343
#endif
4444
#endif
4545

4646
#ifndef TRACE_CLASS_CHECK_LEAKS
4747
#ifdef TRACE_CLASS_MEMORY_ENABLED
48-
#define TRACE_CLASS_CHECK_LEAKS() VCUtility::ClassMemoryTracer::checkMemoryLeaks()
48+
#define TRACE_CLASS_CHECK_LEAKS() VCUtil::ClassMemoryTracer::checkMemoryLeaks()
4949
#else
5050
#define TRACE_CLASS_CHECK_LEAKS() __noop
5151
#endif
5252
#endif
5353

54-
namespace VCUtility {
54+
namespace VCUtil {
5555

5656
class ClassMemoryTracer
5757
{

src/inc/lock.h

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,17 +8,18 @@
88
#include <windows.h>
99
#include <memory>
1010

11-
namespace VCUtility {
11+
namespace VCUtil {
12+
1213
//Class CSLock - ¹Ø¼ü¶ÎËø
1314
class CSLock
1415
{
1516
public:
1617
CSLock();
1718
~CSLock();
1819

19-
void lock();
20-
bool tryLock();
21-
void unlock();
20+
virtual void lock();
21+
virtual bool tryLock();
22+
virtual void unlock();
2223

2324
private:
2425
CSLock(const CSLock &);
@@ -35,8 +36,9 @@ namespace VCUtility {
3536
SRWLock();
3637
~SRWLock();
3738

38-
void lock(bool bShared = false);
39-
void unlock();
39+
virtual void lock(bool bShared = false);
40+
virtual bool tryLock(bool bShared = false);
41+
virtual void unlock();
4042

4143
private:
4244
SRWLock(const SRWLock &);

src/lock.cpp

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
#include "Lock.h"
33
#include <winnt.h>
44

5-
using namespace VCUtility;
5+
using namespace VCUtil;
66

77
CSLock::CSLock()
88
{
@@ -16,7 +16,7 @@ CSLock::~CSLock()
1616

1717
bool CSLock::tryLock()
1818
{
19-
return (bool)TryEnterCriticalSection(&m_cs);
19+
return TryEnterCriticalSection(&m_cs);
2020
}
2121

2222
void CSLock::lock()
@@ -42,6 +42,22 @@ SRWLock::~SRWLock()
4242
unlock();
4343
}
4444

45+
bool SRWLock::tryLock(bool bShared)
46+
{
47+
BOOL success = FALSE;
48+
if (bShared)
49+
{
50+
success = TryAcquireSRWLockShared(&m_lock);
51+
InterlockedExchange(&m_bSharedLocked, TRUE);
52+
}
53+
else
54+
{
55+
success = TryAcquireSRWLockExclusive(&m_lock);
56+
InterlockedExchange(&m_bExclusiveLocked, TRUE);
57+
}
58+
return (bool)success;
59+
}
60+
4561
void SRWLock::lock(bool bShared)
4662
{
4763
if (bShared)

0 commit comments

Comments
 (0)