Entrer en le complétant le code suivant (où il y a pass, enlever pass et insérer des instructions)
def echange(i:int,j:int,tab:list)->None:
temp = tab[i]
tab[i] = tab[j]
tab[j] = temp
def selection(i:int,tab:list)->int:
"""
retourne l'indice de la première valeur minimale
du tableau tab à partir de i
>>> selection(0,[2, 1, 3, 1])
1
>>> selection(3,[2, 1, 3, 1])
3
"""
ind_min = i
for j in range(i,len(tab)):
pass
return ind_min
def tri_selection(tab:list)->list:
"""
>>> tri_selection([2])
[2]
>>> tri_selection([2, 1, 3, 1])
[1, 1, 2, 3]
>>> tri_selection([5, 4, 3, 2, 1])
[1, 2, 3, 4, 5]
"""
pass
if __name__ == "__main__":
import time
M = 10**4
T = [i for i in range(M,0,-1)]
t1 = time.time()
tri_selection(T)
t2 = time.time()
print(t2-t1)
python3 proc.py
Vous devez observer que le terminal est bloqué le temps que le processus s'exécute (durant une vingtaine de secondes)
Ouvrir un autre terminal et entrer la commande pstree
Vous devez observez quelque chose comme ceci
Il y a deux processus bash, l'un a pour enfant le processus Python, bloquant , l'autre a pour enfant le processus pstree
Entrez maintenant dans un terminal la commande
python3 proc.py&
Vous devez observez que cette fois ci le processus Python n'est plus bloquant, bien qu'il ne soit pas encore terminé
Entrez la commande pstree
Cette fois-ci le processus Python n'est plus le seul enfant du processus bash et le processus pstree est un frère du processus Python
Pour arrêter le processus Python faire CTRL + C
On a vu que pour arrêter un processus comme top, ou Python on a utilisé la combinaison de touches CTRL + C
On peut utiliser aussi la commande kill
Lancer Firefox à la console sans que cela soit bloquant
firefox&
Ecouter une radio ou un morceau de musique sur Youtube
Entrez maintenant dans un terminal la commande
python3 proc.py&
Enfin entrer la commande top pour observer les états des principaux processus, firefox, python et top
Relever le PID du processus Firefox,noté ici n, puis arrêter ce processus avec la commande suivante
kill n
Lire le manuel de la commande kill pour trouver comment mettre en pause un processus, puis le relancer
Essayer avec le processus firefox ou d'autres processus