Panda3D
Loading...
Searching...
No Matches
JobManager Class Reference

Public Member Functions

 __init__ (self, timeslice=None)
 
 __repr__ (self)
 
 add (self, job)
 
 destroy (self)
 
 finish (self, job)
 
 getTimeslice (self)
 
 remove (self, job)
 
 setTimeslice (self, timeslice)
 

Static Public Member Functions

 getDefaultTimeslice ()
 

Static Public Attributes

 notify = directNotify.newCategory("JobManager")
 
str TaskName = 'jobManager'
 

Protected Member Functions

 _getSortedPriorities (self)
 
 _process (self, task=None)
 

Protected Attributes

int _highestPriority = Job.Priorities.Normal
 
dict _jobId2overflowTime = {}
 
dict _jobId2pri = {}
 
dict _jobId2timeslices = {}
 
 _jobIdGenerator = None
 
dict _pri2jobId2job = {}
 
dict _pri2jobIds = {}
 
 _process = 1:
 
 _timeslice = timeslice
 
 _useOverflowTime = None
 

Detailed Description

Similar to the taskMgr but designed for tasks that are CPU-intensive and/or
not time-critical. Jobs run in a fixed timeslice that the JobManager is
allotted each frame.

Constructor & Destructor Documentation

◆ __init__()

__init__ ( self,
timeslice = None )

Member Function Documentation

◆ __repr__()

__repr__ ( self)

◆ _getSortedPriorities()

_getSortedPriorities ( self)
protected

◆ _process()

_process ( self,
task = None )
protected

◆ add()

add ( self,
job )

◆ destroy()

destroy ( self)

◆ finish()

finish ( self,
job )

◆ getDefaultTimeslice()

getDefaultTimeslice ( )
static

◆ getTimeslice()

getTimeslice ( self)

◆ remove()

remove ( self,
job )

◆ setTimeslice()

setTimeslice ( self,
timeslice )

Member Data Documentation

◆ _highestPriority

int _highestPriority = Job.Priorities.Normal
protected

◆ _jobId2overflowTime

dict _jobId2overflowTime = {}
protected

◆ _jobId2pri

_jobId2pri = {}
protected

◆ _jobId2timeslices

dict _jobId2timeslices = {}
protected

◆ _jobIdGenerator

_jobIdGenerator = None
protected

◆ _pri2jobId2job

_pri2jobId2job = {}
protected

◆ _pri2jobIds

dict _pri2jobIds = {}
protected

◆ _process

_process = 1:
protected

◆ _timeslice

_timeslice = timeslice
protected

◆ _useOverflowTime

_useOverflowTime = None
protected

◆ notify

notify = directNotify.newCategory("JobManager")
static

◆ TaskName

str TaskName = 'jobManager'
static