Skip to content

Commit 5597fd2

Browse files
committed
feat: #15-Python
Reto #15-Python realizado por mrodara
1 parent 18d395f commit 5597fd2

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed
+36
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
###################################### ASINCRONÍA ################################################
2+
import asyncio #Módulo para poder programar tareas recurrentes
3+
4+
#async def async_task(name: str, execution_time: int = 1):
5+
# """Tarea asíncrona que ejecuta un bloque de código durante un tiempo determinado"""
6+
# print(f"Esta tarea tendrá una duración de {execution_time} segundos")
7+
# print(f"Comenzando la tarea {name}...")
8+
# await asyncio.sleep(execution_time) #Pausa la ejecución durante el tiempo especificado
9+
# print(f"Tarea {name} finalizada.")
10+
#
11+
#asyncio.run(async_task("Formating SSD", 5))
12+
13+
################################### EXTRA ##############################################################
14+
async def proccess_data(name: str, execution_time: int = 1):
15+
print(f"Inicio de ejecución de tarea {name}")
16+
await asyncio.sleep(execution_time)
17+
print(f"Fin de ejecución de tarea {name}")
18+
19+
# Ejecución asíncrona del módulo main
20+
async def main():
21+
22+
# Ejecutamos varias tareas en paralelo
23+
await asyncio.gather(
24+
proccess_data("Tarea C", 3),
25+
proccess_data("Tarea B", 2),
26+
proccess_data("Tarea A", 1),
27+
)
28+
29+
# Ejecución última
30+
final_task = asyncio.create_task(proccess_data("Tarea D", 1))
31+
await final_task
32+
33+
34+
asyncio.run(main=main())
35+
################################### FIN EXTRA ##############################################################
36+
###################################### FIN ASINCRONÍA ################################################

0 commit comments

Comments
 (0)