Example #1
0
 def makeProcess(self,lines,queue1,queue3):
     t1=0
     for line in lines:
         props = line.split(';')
         opciones = list()
         for i in range(4, len(props)):
             opciones.append(props[i])
         while not queue1.empty():
             t1=queue1.get()
         process = proceso.proceso(props[0], int(props[1])+t1, props[2], props[3], opciones)
         self.procesos.append(process)
     queue3.put(sorted(self.procesos, key=lambda proceso: proceso.fecha))
Example #2
0
 def enviar_mensaje(self, queue2):
     while not queue2.empty():
         self.procesosEnWaiting=queue2.get()
     numero = int(raw_input("Ingrese el numero al cual desea mandarle un mensaje\n"))
     mensaje = raw_input("Escriba el mensaje\n")
     time = datetime.datetime.now()
     l = list()
     l.append(numero)
     l.append(mensaje)
     p = proceso.proceso("enviar_mensaje", 0, 3, 2, l)
     self.procesosEnWaiting.append(p)
     self.procesosEnWaiting = sorted(self.procesosEnWaiting, key=lambda proceso: proceso.prioridad)#ordeno la lista seun prioridad
     queue2.put(self.procesosEnWaiting)
     f=open("Mensajes.txt", "a")
     linea = "Mensaje_Enviado" + ":" + str(numero) + ";" + str(time)+ ";" + mensaje + "\n"
     f.write(linea)
     f.close()
Example #3
0
 def __set_properties(self):
     # begin wxGlade: MyFrame.__set_properties
     self.SetTitle("Sistema")
     self.SetSize((390, 468))
     
     self.status_bar.SetFieldsCount(3)
     
     self.procesos.SetMinSize((380, 468))
     self.procesos.InsertColumn(0, "ID", wx.LIST_FORMAT_CENTER, 50)
     self.procesos.InsertColumn(1, "TamaƱo", wx.LIST_FORMAT_CENTER, 80)
     self.procesos.InsertColumn(2, "Tiempo", wx.LIST_FORMAT_CENTER, 80)
     self.procesos.InsertColumn(3, "Recursos", wx.LIST_FORMAT_CENTER, 80)
     self.procesos.InsertColumn(4, "H.D.", wx.LIST_FORMAT_CENTER, 80)
     
     self.memoria.SetMinSize((380, 468))
     self.memoria.InsertColumn(0, "", wx.LIST_FORMAT_LEFT, 80)
     self.memoria.InsertColumn(1, "Memoria", wx.LIST_FORMAT_CENTER, 300)
     
     self.concurrencia.SetMinSize((380, 468))
     self.concurrencia.InsertColumn(0, " ", wx.LIST_FORMAT_CENTER, 50)
     self.concurrencia.InsertColumn(1, "Tiempo Inicial", wx.LIST_FORMAT_CENTER, 165)
     self.concurrencia.InsertColumn(2, "Tiempo Final", wx.LIST_FORMAT_CENTER, 165)
     
     self.ent_sal.SetMinSize((380, 468))
     self.ent_sal.InsertColumn(0, " ", wx.LIST_FORMAT_CENTER, 50)
     self.ent_sal.InsertColumn(1, "Tiempo Recurso", wx.LIST_FORMAT_CENTER, 105)
     self.ent_sal.InsertColumn(2, "Tiempo Ini", wx.LIST_FORMAT_CENTER, 105)
     self.ent_sal.InsertColumn(3, "Tiempo Fin", wx.LIST_FORMAT_CENTER, 105)
     
     #llenando la tabla de procesos
     for i in range(self.numero_procesos):
         self.tareas.append(proceso.proceso(self, i, self.monitor))
         #self.tareas[self.tareas.__len__()-1].Start()
     
     #copiamos
     self.temp_tareas = self.tareas[:]
         
     self.status_bar.SetStatusText("Tiempo: 1s",0)    
     self.status_bar.SetStatusText("Memoria: %d MB" % self.RAM,1)
     self.status_bar.SetStatusText("Procesos: %d" % self.tareas.__len__(),2)
Example #4
0
 def llamar(self, queue2):
     numero = int(raw_input("Ingrese el numero al cual desea llamar\n"))
     print "Llamando... \n", str(numero)
     horaInicio = datetime.datetime.now()
     l=list()
     l.append(numero)
     l.append(15)
     p = proceso.proceso("Hacer_Llamada", 0, 1, 0,l)
     while not queue2.empty():
         self.procesosEnWaiting = queue2.get()
     self.procesosEnWaiting.append(p)
     queue2.put(sorted(self.procesosEnWaiting, key= lambda proceso: proceso.prioridad))
     cancelar = 1
     cancelar = int(raw_input("(0) Cortar"))
     horaTermino = datetime.datetime.now()
     tiempo = horaTermino - horaInicio
     print "Llamada finalizada\n"
     print "Tiempo de llamada: \n", str(tiempo)
     f=open("Historial.txt", "a")
     linea = str(numero) + ";" + str(horaInicio) + ";" + str(tiempo) + "\n"
     f.write(linea)
     f.close()
Example #5
0
 def handler_iniciar(self, event): 
     #iniciamos todo
     self.tareas = []
     self.memoria = []
     self.historial = []
     
     #limpiamos la lista
     self.procesos.DeleteAllItems()
     
     #cargamos nuevas tareas
     for i in range(self.numero_procesos):
         self.tareas.append(proceso.proceso(self, i, self.monitor))
     
     #respaldo
     self.temp_tareas = self.tareas
     
     dlg = wx.MessageDialog(self, 'Se han creado nuevos procesos!',
                            'Process',
                            wx.OK | wx.ICON_INFORMATION
                            #wx.YES_NO | wx.NO_DEFAULT | wx.CANCEL | wx.ICON_INFORMATION
                            )
     dlg.ShowModal()
     dlg.Destroy()
     event.Skip()