Exemple #1
0
    def __init__(self, maxsize=0, prefsize=5, maxthreads=20, minthreads=1):
        PriorityQueue.__init__(self, maxsize)
        self.threadLock = RLock()
        self.threads = []
        self.prefsize = prefsize
        self.maxthreads = maxthreads
        self.minthreads = minthreads

        for _ in range(minthreads):
            self.__createThread()
Exemple #2
0
	def __init__(self):
		"""Initialize an empty priority queue"""
		PriorityQueue.__init__(self)
		self.size = 0

		# Use a count to compare priorities if two nodes
		# have the same number of character occurences. The
		# count should not matter because all we care is that the
		# occurences are the same, so we will make the count unique
		# by adding 1 to it each time we put into the queue
		self.count = 0
Exemple #3
0
 def __init__(self):
     """
     Creates an instance variable to avoid situations where the exact
     same request identifier, request submission, time slot
     requested, and length of time requested has been enqueued.
     This insures that order will always be kept so no words or numbers
     take priority over the request submission time and the time slot
     requested.
     """
     PriorityQueue.__init__(self)
     self.increase = 0  # Initialize instance variable to zero.
Exemple #4
0
    def __init__(self):
        """Initialize an empty priority queue"""
        PriorityQueue.__init__(self)
        self.size = 0

        # Use a count to compare priorities if two nodes
        # have the same number of character occurences. The
        # count should not matter because all we care is that the
        # occurences are the same, so we will make the count unique
        # by adding 1 to it each time we put into the queue
        self.count = 0
    def __init__(self, repairmen_day, repairmen_night, batchsize, buffersizeA, buffersizeB, buffersizeC, seed, duration, silent=False):
        PriorityQueue.__init__(self)
        self.silent = silent
        self.duration = duration
        random.seed(seed)

        self.throughputs = []
        self.stats = {}
        self.machines = []

        samplesA.sort()
        samplesB.sort()
        samplesD.sort()

        bufferA12 = Buffer(self, buffersizeA)
        bufferA34 = Buffer(self, buffersizeA)
        machineA1 = MachineA(self, [bufferA12])
        machineA2 = MachineA(self, [bufferA12])
        machineA3 = MachineA(self, [bufferA34])
        machineA4 = MachineA(self, [bufferA34])
        bufferA12.providers = [machineA1, machineA2]
        bufferA34.providers = [machineA3, machineA4]

        bufferB1 = AssemblyLine(self, buffersizeB)  # Assembly line
        bufferB2 = AssemblyLine(self, buffersizeB)  # Assembly line
        machineB1 = MachineB(self, [bufferA12], [bufferB1])
        machineB2 = MachineB(self, [bufferA34], [bufferB2])
        bufferA12.receivers = [machineB1]  # Done: not crosswise
        bufferA34.receivers = [machineB2]
        bufferB1.providers = [machineB1]  # Assembly line
        bufferB2.providers = [machineB2]  # Assembly line

        bufferC1 = Buffer(self, buffersizeC)
        bufferC2 = Buffer(self, buffersizeC)
        machineC1 = MachineC(self, [bufferB1, bufferB2], [bufferC1, bufferC2], batchsize)
        machineC2 = MachineC(self, [bufferB1, bufferB2], [bufferC1, bufferC2], batchsize)
        bufferB1.receivers = [machineC1, machineC2]  # Assembly line Done: crosswise deliveries
        bufferB2.receivers = [machineC1, machineC2]  # Assembly line
        bufferC1.providers = [machineC1]
        bufferC2.providers = [machineC2]

        machineD1 = MachineD(self, [bufferC1])
        machineD2 = MachineD(self, [bufferC2])
        bufferC1.receivers = [machineD1, machineD2]
        bufferC2.receivers = [machineD1, machineD2]

        self.machines = [machineA1, machineA2, machineA3, machineA4, machineB1,
                         machineB2, machineC1, machineC2, machineD1, machineD2]

        self.available_repairmen = repairmen_day
        self.repairman_day_night_difference = repairmen_day - repairmen_night
Exemple #6
0
	def __init__(self, maxsize = 0, batch_len = None):
		"""
		A Priority Queue for PyPPL jobs

			0                              0 done,             wait for 1
			  1        start 0    1        start 1             start 2
				2      ------>  0   2      ------>      2      --------->
				  3                   3               1   3                    3
					4                   4                   4                2   4
																		   1
		@params:
			`maxsize`  : The maxsize of the queue. Default: None
			`batch_len`: What's the length of a batch
		"""
		if not batch_len:
			raise ValueError('`batch_len` is required for PQueue.')
		PriorityQueue.__init__(self, maxsize)
		self.batchLen = batch_len
Exemple #7
0
    def __init__(self, limit=0):
        PriorityQueue.__init__(self, limit)

        self.max_prio = 0
 def __init__(self, max_size=0):
     self.invalid_set = set()
     PriorityQueue.__init__(self, max_size)
 def __init__(self):
     PriorityQueue.__init__(self)
Exemple #10
0
 def __init__(self):
     PriorityQueue.__init__(self)
     self.tieBreakers = set()
Exemple #11
0
 def __init__(self, maxsize=0):
     _PriorityQueue.__init__(self, maxsize)
     self.wlock = Lock()
Exemple #12
0
 def __init__(self, *args, **kargs):
     PriorityQueue.__init__(self, *args, **kargs)
 def __init__(self, maxsize=0, max_workers=8):
     PriorityQueue.__init__(self, maxsize=maxsize)
     self.max_workers = max_workers
     self.task_messages = []
Exemple #14
0
 def __init__(self):  #amni dao ache
     PriorityQueue.__init__(self)
     self.counter = 0
 def __init__(self):
     PriorityQueue.__init__(self)
     self.reverse = -1
Exemple #16
0
 def __init__(self, maxPQ=False):
     PriorityQueue.__init__(self)
     self.reverse = -1 if maxPQ else 1
Exemple #17
0
 def __init__(self):
     PriorityQueue.__init__(self)
     self.counter=0
Exemple #18
0
    def __init__(self, limit=0):
        PriorityQueue.__init__(self, limit)

        self.max_prio = 0
Exemple #19
0
 def __init__(self, max_size=0):
     self.invalid_set = set()
     PriorityQueue.__init__(self, max_size)
Exemple #20
0
 def __init__(self):
     PriorityQueue.__init__(self)
     self.counter = 0
 def __init__(self, maxsize=0):
     PriorityQueue.__init__(self, maxsize)
     self.values = set()