13 #pragma managed( push, off ) 40 , m_psMappingInfo(
nullptr )
67 DWORD dwProcessId = ::GetCurrentProcessId();
68 for (
int nIndex = 0;
PROCESS_MAX > nIndex; ++nIndex ) {
139 DWORD dwProcessId = ::GetCurrentProcessId();
140 for (
int nIndex = 0;; ++nIndex ) {
190 DWORD dwProcessId = ::GetCurrentProcessId();
191 for (
int nIndex = 0;; ++nIndex ) {
222 DWORD dwProcessId = ::GetCurrentProcessId();
223 for (
int nIndex = 0;; ++nIndex ) {
248 if ( !cProcess.
Wait( 0 ) ) {
275 wchar_t const* pszMessage = L
"";
278 pszMessage = L
", All Processes Termination";
282 LogOutNoIndent( L
"NewDel#%d, Total = %lld, Max = %lld, By Terminated Process[%04X], Count = %d, Size = %lld%s." 308 LogOutNoIndent( L
"NewDel#%d, Total = %lld, Max = %lld, Addr = 0x%p, Size = %zu, By %s!%s.", nCount, nTotalSize, nMaxSize, pAddr, uSize,
LogOutExeFile(), pszFuncName );
324 #if defined( _WINDLL ) && !defined( _MANAGED ) 332 return ::GetModuleHandleW(
nullptr );
346 #pragma managed( pop ) #define NotifyConstructor()
コンストラクタ実行通知マクロ
#define NotifyFatalError()
致命的エラー発生通知マクロ
virtual void Close() noexcept override
クローズ関数
CLibNewDel() noexcept
コンストラクタ
SProcessInfo m_sProcess[PROCESS_MAX]
参照プロセス情報構造体配列
DWORD m_dwProcessId
プロセスID
static int const PROCESS_MAX
最大参照プロセス数
#define NotifyDestructor()
デストラクタ実行通知マクロ
virtual void LogOutOperatorNewDelete(int nCount, void *pAddr, size_t uSize, LONGLONG nTotalSize, LONGLONG nMaxSize, wchar_t const *pszFuncName) noexcept
生成消滅演算子ログ出力関数
static HINSTANCE GetInstanceHandle() noexcept
インスタンスハンドル取得関数
virtual LPVOID GetView() const noexcept
ビューポインタ取得関数
static CLibNewDel s_cInstance
静的インスタンス
virtual ~CLibNewDel() noexcept
デストラクタ
virtual void NotifyOperatorDelete(void *pAddr, size_t uSize, wchar_t const *pszFuncName) noexcept
消滅演算子実行通知関数
#define _PROJECT_TYPE
プロジェクト種別定義
virtual bool Wait(DWORD dwTime=INFINITE) noexcept
ウェイト関数
virtual bool UpdateProcessInfo(bool bCurrent=false) noexcept
プロセス情報更新関数
virtual void NotifyOperatorNew(void *pAddr, size_t uSize, wchar_t const *pszFuncName) noexcept
生成演算子実行通知関数
SMappingInfo * m_psMappingInfo
共有メモリ情報構造体ポインタ
virtual bool Open(DWORD dwProcessId, DWORD dwAccess=SYNCHRONIZE) noexcept
オープン関数
static wchar_t const *const OBJECT_NAME
オブジェクト名
static wchar_t const * GetProjectType() noexcept
プロジェクト種別取得関数
#define LogOutNoIndent(...)
インデントなし書式設定文字列行出力マクロ
LONGLONG m_nTotalSize
トータルメモリサイズ
virtual bool Create(DWORD dwSize, wchar_t const *pszObjectName=nullptr) noexcept
作成関数
LONGLONG m_nMaxSize
最大メモリサイズ
#define LogOutExeFile()
実行ファイル名取得マクロ
virtual void Close() noexcept override
クローズ関数
LONGLONG m_nTotalSize
トータルメモリサイズ