At køre kommandoer som en kø og tilføje flere kommandoer til køen, mens de første kommandoer stadig kører, kan være nyttigt i mange programmeringssituationer. Her er nogle metoder til at opnå dette:
#!/bin/bash
queue=()
function enqueue {
queue+=("$1")
}
function dequeue {
echo "${queue[0]}"
queue=("${queue[@]:1}")
}
function process_queue {
while [ ${#queue[@]} -gt 0 ]; do
cmd=$(dequeue)
eval "$cmd" &
done
wait
}
enqueue "sleep 5"
enqueue "echo 'Hello World'"
process_queue
from concurrent.futures import ThreadPoolExecutor
import time
def task(name):
print(f"Task {name} starting")
time.sleep(2)
print(f"Task {name} completed")
with ThreadPoolExecutor(max_workers=3) as executor:
for i in range(5):
executor.submit(task, i)
Ved at bruge disse metoder kan du effektivt køre kommandoer som en kø og tilføje flere kommandoer til køen, mens de første kommandoer stadig kører.
Spar dig selv for besvær og kom igennem din to-do liste i dag
1
Beskriv din opgave
2
Modtag bud
3
Få løst din opgave
Møbelsamling
Hjælp med at samle Ikea klædeskab
Maler
Klargøring af lejlighed til flyttesyn
Flyttehjælp
Flytning af 150 kvm hus til Roskilde fra København
Havearbejde
Beskæring af 4 større træer
IT support
Geninstallering af windows + programmer
Elektriker
Installation af Sonos musikanlæg i hus
Rengøring
Ugentlig rengøring af lejlighed (114kvm)
Flyttehjælp
Flytning af 150 kvm hus til Roskilde fra København
Elektriker
Opsætning af lamper i stue og soveværelse
Catering
3-retters menu til 14 mennesker