stardiv.resource
Class TaskManager
java.lang.Object
|
+--stardiv.resource.TaskManager
- All Implemented Interfaces:
- java.lang.Runnable
- public synchronized class TaskManager
- extends java.lang.Object
- implements java.lang.Runnable
Field Summary |
private stardiv.memory.Vector |
aResChilds
|
private stardiv.memory.Vector |
aResources
|
private stardiv.memory.Vector |
aRunningTaskQueue
|
private stardiv.memory.Vector |
aTaskQueue
|
private static java.util.Hashtable |
aThreadTaskTable
|
private stardiv.memory.Stack |
aThreads
|
private boolean |
bNotify
|
private int |
iMaxTasks
|
private int |
iResChangeCount
|
private int |
iTransactedTasks
|
private stardiv.resource.Task |
pCacheTask
|
private java.lang.Thread |
pMgrThread
|
Constructor Summary |
TaskManager(int i)
|
Method Summary |
private void |
activateTask(stardiv.resource.Task t)
|
(package private) int |
addResource(stardiv.resource.Resource r)
|
(package private) void |
changeToNotTransacted(stardiv.resource.Task t)
|
static stardiv.resource.Task |
currentTaskBinding()
|
(package private) void |
freeThread(stardiv.resource.TaskThread tt)
|
(package private) stardiv.resource.Resource |
getResource(int i)
|
(package private) stardiv.memory.BitArray |
getResourceBitSet(stardiv.resource.Resource r)
|
java.util.Enumeration |
getRunningTasks()
|
java.util.Enumeration |
getWaitingTasks()
|
void |
insert(stardiv.resource.Task t)
|
static void |
newTaskBinding(stardiv.resource.Task t)
|
private boolean |
parallel(stardiv.resource.Task t)
|
void |
ready(stardiv.resource.Task t)
|
void |
releaseSpecialTask(stardiv.resource.Task t)
|
static void |
releaseTaskBinding(stardiv.resource.Task t)
|
(package private) void |
removeResource(stardiv.resource.Resource r)
|
static void |
resume(stardiv.resource.Task t)
|
void |
run()
|
stardiv.resource.Task |
scheduleSpecialTask(java.lang.String s,
stardiv.resource.Resource r)
|
static stardiv.resource.Task |
suspend()
|
void |
terminateDependendTasks(stardiv.resource.Task t)
|
private void |
terminateTask(stardiv.resource.Task t)
|
void |
terminateTaskAndDepTasks(stardiv.resource.Task t)
|
(package private) void |
trace(java.lang.String s,
stardiv.resource.Resource r)
|
private void |
trace(java.lang.String s,
stardiv.resource.Task t,
stardiv.resource.Resource r)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
aResChilds
private stardiv.memory.Vector aResChilds
aResources
private stardiv.memory.Vector aResources
aRunningTaskQueue
private stardiv.memory.Vector aRunningTaskQueue
aTaskQueue
private stardiv.memory.Vector aTaskQueue
aThreadTaskTable
private static java.util.Hashtable aThreadTaskTable
aThreads
private stardiv.memory.Stack aThreads
bNotify
private boolean bNotify
iMaxTasks
private int iMaxTasks
iResChangeCount
private int iResChangeCount
iTransactedTasks
private int iTransactedTasks
pCacheTask
private stardiv.resource.Task pCacheTask
pMgrThread
private java.lang.Thread pMgrThread
TaskManager
public TaskManager(int i)
activateTask
private final void activateTask(stardiv.resource.Task t)
addResource
final int addResource(stardiv.resource.Resource r)
changeToNotTransacted
final void changeToNotTransacted(stardiv.resource.Task t)
currentTaskBinding
public static stardiv.resource.Task currentTaskBinding()
freeThread
final void freeThread(stardiv.resource.TaskThread tt)
getResource
final stardiv.resource.Resource getResource(int i)
getResourceBitSet
final stardiv.memory.BitArray getResourceBitSet(stardiv.resource.Resource r)
getRunningTasks
public final java.util.Enumeration getRunningTasks()
getWaitingTasks
public final java.util.Enumeration getWaitingTasks()
insert
public final void insert(stardiv.resource.Task t)
newTaskBinding
public static void newTaskBinding(stardiv.resource.Task t)
parallel
private final boolean parallel(stardiv.resource.Task t)
ready
public final void ready(stardiv.resource.Task t)
releaseSpecialTask
public final void releaseSpecialTask(stardiv.resource.Task t)
releaseTaskBinding
public static void releaseTaskBinding(stardiv.resource.Task t)
removeResource
final void removeResource(stardiv.resource.Resource r)
resume
public static void resume(stardiv.resource.Task t)
run
public final void run()
- Specified by:
run
in interface java.lang.Runnable
scheduleSpecialTask
public final stardiv.resource.Task scheduleSpecialTask(java.lang.String s,
stardiv.resource.Resource r)
throws stardiv.resource.ResourceLockException
suspend
public static stardiv.resource.Task suspend()
terminateDependendTasks
public final void terminateDependendTasks(stardiv.resource.Task t)
terminateTask
private final void terminateTask(stardiv.resource.Task t)
terminateTaskAndDepTasks
public final void terminateTaskAndDepTasks(stardiv.resource.Task t)
trace
final void trace(java.lang.String s,
stardiv.resource.Resource r)
trace
private final void trace(java.lang.String s,
stardiv.resource.Task t,
stardiv.resource.Resource r)