1.4   Target Server Threads

The target server uses multiple threads to service WTX requests, target events, load requests, and VIO events efficiently. Figure 1-3 shows the various threads. 

  

  • WTX thread.  
    Each thread services a unique WTX client. When a tool connects to the target server, the target server creates a thread for it which processes all tool requests and exists until the tool disconnects.

  • Loader thread.  
    This thread waits for and performs load requests. This allows the load to be performed asynchronously, so clients are free to do other operations while the load is in progress. It also means a load can be cancelled in process.

  • Virtual I/O thread.  
    This thread waits for inputs from a target server virtual console and sends data to the associated virtual I/O channel. On Windows it is created when the target server is started with the -C (virtual console) option. On UNIX it is always available because UNIX permits consoles to be created at any time using wtxConsoleCreate and this thread is in place to support all consoles.

  • Asynchronous events thread.  
    This thread waits for and handles target events. (For more information, see 2. Target Server Back End).