Global.cpp 1.3 KB

123456789101112131415161718192021222324252627282930313233343536
  1. //---------------------------------------------------------------------------
  2. #include <vcl.h>
  3. #pragma hdrstop
  4. #include "Global.h"
  5. //---------------------------------------------------------------------------
  6. #pragma package(smart_init)
  7. //---------------------------------------------------------------------------
  8. // TGuard
  9. //---------------------------------------------------------------------------
  10. __fastcall TGuard::TGuard(TCriticalSection * ACriticalSection) :
  11. FCriticalSection(ACriticalSection)
  12. {
  13. DebugAssert(ACriticalSection != NULL);
  14. FCriticalSection->Enter();
  15. }
  16. //---------------------------------------------------------------------------
  17. __fastcall TGuard::~TGuard()
  18. {
  19. FCriticalSection->Leave();
  20. }
  21. //---------------------------------------------------------------------------
  22. // TUnguard
  23. //---------------------------------------------------------------------------
  24. __fastcall TUnguard::TUnguard(TCriticalSection * ACriticalSection) :
  25. FCriticalSection(ACriticalSection)
  26. {
  27. DebugAssert(ACriticalSection != NULL);
  28. FCriticalSection->Leave();
  29. }
  30. //---------------------------------------------------------------------------
  31. __fastcall TUnguard::~TUnguard()
  32. {
  33. FCriticalSection->Enter();
  34. }
  35. //---------------------------------------------------------------------------