Je li Python dobar za konkurentnost?
Je li Python dobar za konkurentnost?

Video: Je li Python dobar za konkurentnost?

Video: Je li Python dobar za konkurentnost?
Video: Java On Conference 2022, JDK 19, Spring Framework 6 и Spring Boot 3 [Новости MJC #11] 2024, Prosinac
Anonim

Piton nije jako dobro za CPU-vezane istodobno programiranje. GIL će (u mnogim slučajevima) učiniti da vaš program radi kao da radi na jednoj jezgri - ili još gore. Ako je vaša aplikacija vezana za I/O, Piton može biti ozbiljno rješenje jer se GIL obično oslobađa tijekom blokiranja poziva.

Također morate znati podržava li Python istodobnost?

Python radi imaju ugrađene biblioteke za najčešće istodobno programske konstrukcije – višeprocesna i višenitna. Razlog je višenitno uključivanje Piton nije zapravo višenitno, zbog GIL in Piton.

Netko se također može zapitati, zašto višenitnost nije moguća u pythonu? CPython interpreter (za čiste Piton kod) prisilit će da se GIL oslobodi svakih sto bajt kodnih instrukcija. Jednostavno dopušta da se samo jedna nit izvodi odjednom unutar interpretatora. Dakle, višeprocesna ne višenitno omogućit će vam postizanje istinske istodobnosti.

Nakon toga, postavlja se pitanje je li Python dobar za višenitnost?

Piton ne dopušta multi-threading u pravom smislu te riječi. Ono ima multi-threading paket ali ako želite višenitni da biste ubrzali svoj kôd, onda to obično nije a dobro ideja da ga iskoristim. Piton ima konstrukciju nazvanu Globalna brava tumača (GIL).

Koji se modul može koristiti za implementaciju konkurentnosti u Pythonu 3?

The istodobno . budućnosti modul je dodan u Piton 3.2. Prema Piton dokumentaciju pruža programeru sučelje visoke razine za asinkrono izvršavanje poziva koji se mogu pozivati.

Preporučeni: