Topic Path: Symbol Reference > Classes > TIdCriticalSection Class
TIdCriticalSection Class

Represent critical sections used in the Indy library.

TIdCriticalSection = class(TCriticalSection);

TIdCriticalSection is a TCriticalSection descendant that represent critical sections used in the Indy library. 

TIdCriticalSection allows a thread in a multi-threaded application to temporarily block other threads from accessing a block of code. Use TIdCriticalSection to safeguard operations that may be disrupted if another thread executes certain sections of code before the operation is completed. 

TIdCriticalSection allows only a single thread to enter a block of code at any given time. Because they block the execution of other threads, overusing critical sections can seriously interfere with overall application performance. 

Critical sections must be global in scope so that they are available to all threads. In every thread, any action that could interfere with the operations safeguarded by the critical section should only take place after calling the Acquire or Enter method. Threads that do not use the critical section for relevant operations can introduce bugs. 

TIdCriticalSection is defined to eliminate warnings about imports in the Indy library.

Copyright 1993-2006, Chad Z. Hower (aka Kudzu) and the Indy Pit Crew. All rights reserved.
Post feedback to the Indy Docs Newsgroup.