Ar C++ turi daugiagiją?
Ar C++ turi daugiagiją?

Video: Ar C++ turi daugiagiją?

Video: Ar C++ turi daugiagiją?
Video: C++ Tutorial for Beginners - Full Course 2024, Gegužė
Anonim

A daugiasriegis programoje yra dvi ar daugiau dalių, kurios gali bėgti vienu metu. Kiekviena tokios programos dalis yra vadinamas a siūlas , ir kiekvienas siūlas apibrėžia atskirą vykdymo kelią. C++ veikia neturi jokio įmontuoto palaikymo daugiasriegis programos.

Vėliau taip pat galima paklausti, ar C++ yra vienos sriegio?

Multithreading C++ C+11 programoje buvo pristatytas kelių gijų palaikymas. C++ 11 atsisakė viso to ir davė mums std:: siūlas . The siūlas klasės ir susijusios funkcijos yra apibrėžtos siūlas antraštės failą. std:: siūlas yra siūlas klasė, kuri reiškia a vienas siūlas C++ kalboje.

Be to, ar Python yra vienos gijos ar kelių sriegių? Trumpas atsakymas yra taip, jie yra vieno sriegio . JRuby yra daugiasriegis ir gali būti paleistas tomcat kaip ir kitas Java kodas. MRT (numatytasis rubinas) ir Python abu turi GIL (Global Interpreter Lock) ir taip yra vieno sriegio.

Taip pat kyla klausimas, ar C++ žemėlapio gija yra saugi?

2 atsakymai. C++11 standartas garantuoja, kad prieiga prie konteinerių yra const metodu saugus iš skirtingų siūlai (ty abu naudoja const metodus). Taigi trumpas atsakymas: tu esi saugus , tol, kol kitas siūlas tiesiogiai nesusimaišo su tuo konkrečiu įrašu žemėlapį.

Ar kelios gijos gali iškviesti tą pačią funkciją?

Kelios gijos, iškviečiančios tą pačią funkciją prie tas pats laikas. Kiekvienas funkcijos skambutis turi savo privatų vietinių kintamųjų rinkinį ir valios niekada netrukdykite kitiems siūlai Arba kitas skambučių iš ta pati funkcija viduje konors skambinti krūva. Tačiau visi ištekliai, kurie gali būti bendrinami siūlai yra potencialiai pavojingi.