Cuprins
După cum știm Piton Are multe biblioteci care ne permit să lucrăm și să gestionăm conexiunile în rețele, indiferent dacă ne conectăm la fișiere la distanță sau programul nostru servește ca server, în exemple de bază de utilizare a socketurilor cu Piton s-a văzut că se manipulează foarte ușor cu utilizarea modulului prizăCu toate acestea, pentru ca aceasta să fie o aplicație mai robustă, trebuie să putem gestiona mai multe conexiuni.Pentru gestionarea mai multor conexiuni în Piton putem folosi Bifurcare și din Filetat, pentru a putea genera procese de intrare și ieșire asincrone care ne permit să asistăm la mai multe conexiuni în același timp.
Furcare și filetare
Dacă suntem în primii pași de învățare a programării sau dacă am făcut doar o programare structurată, poate că acești termeni pot părea complicați pentru a fi necunoscuți, cu toate acestea sunt concepte simple de înțeles și de digerat, să vedem definițiile înainte de a continua mai departe.
Bifurcare: Este un termen folosit în medii UNIX și constă în realizarea unei bifurcații, cu un proces îl duplicăm și apoi avem două procese egale, dar fiecare cu scopul său, procesul original este cunoscut ca procesul părinte și procesul duplicat este cunoscut sub numele de procesul copil, dacă facem o analogie cu știința-ficțiune, le putem vedea ca universuri paralele, în care există aceleași lucruri doar că se pot comporta diferit în aceleași puncte.
Dezavantajul Bifurcare este că poate fi foarte scump din punct de vedere al resurselor și de aceea avem Filetat, A Fir Este un fir, în acest caz firele sunt subprocese care aparțin aceluiași proces, partajând memorie și resurse, în acest fel reducem costul resurselor procesorului, totuși prin partajarea memoriei găsim problema că trebuie să fim foarte atent cu elementele la care Fire pentru a nu duce la operațiuni compromise.
Acum, că cunoaștem teoria și conceptele de bază, vom vedea câteva exemple cu ajutorul cărora putem vedea aplicația Piton.
Așa cum am spus la început datorită numărului mare de module și biblioteci existente în Piton, realizarea de programe cu funcționalități de rețea este foarte simplă, deci ne putem concentra asupra logicii în loc de aspectele tehnice.
Să vedem în imaginea următoare un exemplu de Bifurcare, apoi vom explica ce se întâmplă cu codul:
După cum vedem această aplicație este destul de simplă, să vedem cum putem realiza ceva similar folosind Fire, în imaginea următoare avem un exemplu: