Browse Prior Art Database

Thread Management with User-Independence from Dispatcher Implementation

IP.com Disclosure Number: IPCOM000122954D
Original Publication Date: 1998-Jan-01
Included in the Prior Art Database: 2005-Apr-04
Document File: 2 page(s) / 72K

Publishing Venue

IBM

Related People

Howland, MJ: AUTHOR [+2]

Abstract

Disclosed is a method for controlling asynchronously dispatched tasks (threads) with a local, slaved object.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Thread Management with User-Independence from Dispatcher Implementation

      Disclosed is a method for controlling asynchronously dispatched
tasks (threads) with a local, slaved object.

      The environment is one in which tasks must be created and
dispatched to an asynchronous task manager while maintaining some
level of control on the task.  Examples of the types of control the
caller may wish to implement include (but are not limited to):
  o  Returning the return code after task execution
  o  Returning any thrown exceptions during task execution
  o  Requesting that the user task be notified when task execution
      finishes
  o  Requesting that the task be canceled (if not already started)

      This level of control is complicated by the fact that the
object representing the task has been dispatched (and possibly queued
for execution later) in a task manager.  To overcome this problem, a
handle object is created and slaved to the object representing the
task.  The handle object represents the caller's view of the unit of
work and provides methods allowing the caller to interface with the
dispatcher.  The Figure shows the sequence of events leading to the
creation of a handle object.

      A user task (100) invokes a static method (A) on the specific
type of task to be created (200).  The call accepts a function
pointer/argument pair and return (B) a handle object (101).  All
communication between the calling user task (100) and the newly
created object representing the actual task (200) is done via the
handle (101).  In the Figure, communications with the task under
dispatch control is shown by arrows:  C, D and I.  It should be noted
that the actual ta...