Internet Direct (Indy)
Home
PreviousUpNext
TIdScheduler Class

Base class for schedulers used in multi-threaded TCP servers.

Pascal
TIdScheduler = class(TIdBaseComponent);

TIdScheduler is a TIdBaseComponent descendant that represents the base class used for schedulers in TIdTCPServer and descendant classes. 

TIdScheduler introduces an abstract representation for executable tasks for client connections to a multi-threaded TCP server. This abstraction, called a Yarn, allows the use either threads or fibers for execution of client connections to the server. Each client connection, or Yarn, represents a task that is managed by the Scheduler for the server. 

There are basically two types of Schedulers available for TIdTCPServer: Thread-based and Fiber-based. Each is designed to work with a specific type of executable task (or Yarn) that represents the client connections. 

TIdScheduler specifies (and in some cases - implements) methods that handle creation, execution, and termination of tasks for client connections. Applications must use an instance of a descendant class (like TIdSchedulerOfThreadDefault, TIdSchedulerOfThreadPool, or TIdSchedulerOfFiber) that implements the mechanism for managing the TIdYarn for the executable task. 

Resources required for the ActiveYarns property are allocated during intialization of the component instance.

TIdBaseComponent 

TIdSchedulerOfThreadDefault 

TIdSchedulerOfThreadPool 

TIdSchedulerOfFiber 

TIdYarn 

TIdContext 

TIdTask 

TIdTCPServer.Scheduler 

TIdTCPServer.Contexts 

TIdTCPServer.ContextClass

Internet Direct (Indy) version 10.1.5
Copyright © 1993-2006, Chad Z. Hower (aka Kudzu) and the Indy Pit Crew. All rights reserved.
Website http://www.indyproject.org.
Post feedback to the Indy Documentation newsgroup.