This shows you the differences between two versions of the page.
asc:laboratoare:03 [2023/03/12 15:18] daniel.dosaru [Exerciții] |
asc:laboratoare:03 [2023/03/17 01:00] (current) emil.slusanschi [Exerciții] |
||
---|---|---|---|
Line 323: | Line 323: | ||
* :!: Datorită intercalărilor thread-urilor este posibil ca //print//-urile să nu reflecte ordinea exactă a operațiilor. Rulați de mai multe ori pentru a putea prinde problema. | * :!: Datorită intercalărilor thread-urilor este posibil ca //print//-urile să nu reflecte ordinea exactă a operațiilor. Rulați de mai multe ori pentru a putea prinde problema. | ||
| | ||
- | **Task 3** ThreadPoolExecutor - Completați fișierul ''task3.py''. | + | **Task 3** ThreadPoolExecutor - Completați fișierul ''dna.py''. |
| | ||
Folosind un pool de thread-uri căutați o secvență de ADN într-un set de eșantioane de ADN (DNA samples). Creați-vă un modul în care: | Folosind un pool de thread-uri căutați o secvență de ADN într-un set de eșantioane de ADN (DNA samples). Creați-vă un modul în care: | ||
Line 338: | Line 338: | ||
-Folosind [[https://docs.python.org/3/library/concurrent.futures.html#concurrent.futures.Executor.submit|submit]] sau [[https://docs.python.org/3/library/concurrent.futures.html#concurrent.futures.Executor.map|map]] dați spre execuție funcția de căutare. | -Folosind [[https://docs.python.org/3/library/concurrent.futures.html#concurrent.futures.Executor.submit|submit]] sau [[https://docs.python.org/3/library/concurrent.futures.html#concurrent.futures.Executor.map|map]] dați spre execuție funcția de căutare. | ||
-Afișați rezultatele | -Afișați rezultatele | ||
- | * păstrați ce întorc apelurile către submit sau rezultatul lui map într-o variabilă și apoi iterați pe elementele din ea, afișând fiecare rezultat) | + | * păstrați ce întorc apelurile către submit sau rezultatul lui map într-o variabilă și apoi iterați pe elementele din ea, afișând fiecare rezultat |
* puteți vedea în [[asc:laboratoare:03#threadpoolexecutor|exemplul din laborator]] cum se afișează rezultatele unui map, sau în documentație pentru [[https://docs.python.org/3/library/concurrent.futures.html#threadpoolexecutor-example|submit]] | * puteți vedea în [[asc:laboratoare:03#threadpoolexecutor|exemplul din laborator]] cum se afișează rezultatele unui map, sau în documentație pentru [[https://docs.python.org/3/library/concurrent.futures.html#threadpoolexecutor-example|submit]] | ||
* dacă nu sunteți familiari cu sintaxa de one-liners folosită în documentație, puteți folosi simple for-uri, va creați o lista goală înainte, și la fiecare iterație din for adăugați în ea rezultatul metodei submit. După aceea mai faceți un for în care afișați elementele din lista, apelând .result() pe fiecare din ele. | * dacă nu sunteți familiari cu sintaxa de one-liners folosită în documentație, puteți folosi simple for-uri, va creați o lista goală înainte, și la fiecare iterație din for adăugați în ea rezultatul metodei submit. După aceea mai faceți un for în care afișați elementele din lista, apelând .result() pe fiecare din ele. | ||
Line 351: | Line 351: | ||
* <html><a class="media mediafile mf_pdf" href=":asc:lab3:index?do=export_pdf">PDF laborator</a></html> | * <html><a class="media mediafile mf_pdf" href=":asc:lab3:index?do=export_pdf">PDF laborator</a></html> | ||
- | * {{:asc:lab3:lab3-skel.zip|Schelet laborator}} | + | * {{:asc:laboratoare:lab3-skel_2023.zip|Schelet laborator}} |
<hidden> * {{:asc:lab3:lab3-sol.zip|Soluție laborator}} </hidden> | <hidden> * {{:asc:lab3:lab3-sol.zip|Soluție laborator}} </hidden> | ||