Select Git revision
canvas_classes.py
-
Christopher Bohn authoredChristopher Bohn authored
HTC.py 1.77 KiB
import time
import socket
from random import randint,choice
import sys
from LightControl import *
turnAllNodesOff()
activeWorkers = []
deadWorkers = []
start = time.time()
### Get a list of all working workers
for host in sys.argv[1].split(","):
if "worker" in host:
deadWorkers.append(host)
while (time.time() - start) < 40: # How long to run the simulation for
if randint(0,1) == 1 and len(deadWorkers) > 0: # Add randomness and see if there are dead workers
currentWorker = choice(deadWorkers) # Choose a random worker, then send networking to it and turn it on,
sendNetwork("LegionHead", currentWorker,1)
sendNetwork("LegionFile", currentWorker,1)
time.sleep(0.05)
changeLoadState(currentWorker,1)
deadWorkers.remove(currentWorker) # Remove from the list of dead workers and add to active list
activeWorkers.append(currentWorker)
if randint(0,1) == 1 and len(activeWorkers) > 0:# Add randomness and see if there are active workers
currentWorker = choice(activeWorkers) # Choose a random worker,
if (time.time() - nodes[currentWorker]["time"]) > 5: # if its been alive for atleast 5 seconds
sendNetwork(currentWorker,"LegionFile",1) # send networking to it and turn it on,
sendNetwork(currentWorker,"LegionHead",1)
changeLoadState(currentWorker,0)
activeWorkers.remove(currentWorker) # Remove from the list of active workers and add to dead list
deadWorkers.append(currentWorker)
for worker in activeWorkers:
sendNetwork(currentWorker,"LegionFile",1) # send networking to it and turn it on,
sendNetwork(currentWorker,"LegionHead",1)
changeLoadState(currentWorker,0)
turnAllNodesOff()