Leaked source code of windows server 2003
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
//+---------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1992 - 1993.
//
// File: task.cxx
//
// Contents: CTask class implementation.
//
// Classes: CTask
//
// Functions: None.
//
// History: 25-Oct-95 MarkBl Created
//
//----------------------------------------------------------------------------
#include "..\pch\headers.hxx"
#pragma hdrstop
#include "debug.hxx"
#include "task.hxx"
//+---------------------------------------------------------------------------
//
// Method: CTask::AddRef
//
// Synopsis: Increment the task reference count.
//
// Arguments: None.
//
// Returns: ULONG reference count.
//
// Notes: None.
//
//----------------------------------------------------------------------------
ULONG CTask::AddRef(void) { ULONG ulTmp = InterlockedIncrement((LONG *)&_cReferences);
schDebugOut((DEB_USER3, "CTask::AddRef(0x%x) _cReferences(%d)\n", this, ulTmp));
return(ulTmp); }
//+---------------------------------------------------------------------------
//
// Method: CTask::Release
//
// Synopsis: Decrement the task reference count.
//
// Arguments: None.
//
// Returns: ULONG reference count.
//
// Notes: None.
//
//----------------------------------------------------------------------------
ULONG CTask::Release(void) { ULONG ulTmp = InterlockedDecrement((LONG *)&_cReferences);
schDebugOut((DEB_USER3, "CTask::Release(0x%x) _cReferences(%d)\n", this, ulTmp));
if (ulTmp == 0) { delete this; } return(ulTmp); }
|