Rust 1.36 Siidaynta Luuqada Barnaamijaynta

la daabacay siidaynta luuqada programming-ka Miridhku 1.36, oo uu aasaasay mashruuca Mozilla. Luqadda waxay diiradda saartaa badbaadada xusuusta, waxay bixisaa maaraynta xusuusta oo toos ah, waxayna bixisaa hab lagu gaaro isbarbardhigga hawsha sare iyada oo aan la isticmaalin qashin ururiyaha ama wakhtiga shaqada.

Maareynta xusuusta tooska ah ee Rust's waxay ka xoraysaa horumariyaha wax-is-daba-marinta tilmaamayaasha waxayna ka ilaalisaa dhibaatooyinka ka dhasha khalkhalgelinta heerka hoose ee xusuusta, sida gelitaanka xusuusta bilaashka ah ka dib, tilmaame null ah, xad-dhaaf ah, iyo wixii la mid ah. Maamule xirmo ayaa la soo saarayaa si uu u qaybiyo maktabadaha, loo hubiyo isu-ururinta una maamulo ku-tiirsanaanta mashruuca. Cargo, taasoo kuu ogolaanaysa inaad hal mar gujiso ku hesho maktabadaha looga baahan yahay barnaamijka. Kaydka waxaa lagu taageeraa in lagu qabto maktabadaha sanduuqyada.io.

Main wax cusub:

  • Sifada ayaa xasilisay Future, taas oo ka dhigan qiimaha aan qiimayntiisa weli la dhamaystirin inta la isticmaalayo async / .wait blocks. Qiimaha Asynchronous ee lagu qeexay iyadoo la adeegsanayo Mustaqbalka ayaa suurtogal ka dhigaya in la sii wado fulinta shaqada waxtarka leh ee dunta, iyadoo isla mar ahaantaana la sugayo dhamaystirka xisaabinta qiimo gaar ah;
  • Maktabadu waa la xasiliyay qoondayn, kaas oo bixiya tilmaameyaal caqli badan iyo ururin lagu maareeyo qiyamka xusuusta lagu qoondeeyey. Qoondaynta xusuusta ee std hadda waxay isticmaashaa nooca Wax, kuwaas oo dib looga dhoofiyo alloc. Isticmaalka goonida ah ee alloc wuxuu macno ka dhigayaa codsiyada aan ku xidhnayn std ("#! [no_std]"), iyo sidoo kale maktabadaha loogu talagalay isticmaalka barnaamijyada la midka ah iyada oo aan std;
  • Si aad uga gudubto hubinta bilowga saxda ah ee qiyamka soo jeediyay nooca dhexe MalahaUnit, kaas oo loo isticmaali karo bedelka mem :: shaqada aan la aqoon sida beddelka badbaadada leh. Mem :: Shaqada aan la aqoon ayaa ku habboon in si dhakhso ah loo abuuro qalabyo, laakiin waxay marin habaabisaa iskudubaridiyaha sababtoo ah waxay u muuqataa in la bilaabay, laakiin dhab ahaantii qiimihiisu waa mid aan la garanayn. Waxaa laga yaabaa in Uninit ay kuu ogolaato inaad si cad u muujiso isku-duwaha in qiimuhu yahay mid aan la garanayn, si aad u tixgeliso dabeecadaha suurtogalka ah ee aan la qeexin ee la xidhiidha tan, iyo sidoo kale in la abaabulo jeegaga barnaamijyada iyada oo loo marayo "laga yaabaa_t:" iyo bilow-tallaabo ah, calaamadaynta dhamaystirkeeda. adoo isticmaalaya wacitaanka ".assume_init()". Markii ay soo baxday MaybeUninit, mem :: shaqada aan la aqoon ayaa la joojiyay oo laguma talinayo isticmaalka;
  • Farsamada NLL (Non-Lexical Lifetimes) farsamada, kaas oo balaariyay nidaamka loogu talagalay duubista nolosha doorsoomayaal la amaahday, ayaa loo dejiyay luqadda Rust 2015 (bilowgii, NLL waxaa taageeray oo keliya Rust 2018). Halkii aad nolosha ka samayn lahayd heerka qaamuuska, NLL waxay sidaas ku samaynaysaa heerka jaantusyada tilmaamayaasha ee garaafka socodka fulinta. Habkani wuxuu kuu ogolaanayaa inaad kordhiso tayada hubinta amaahda doorsoomayaasha (amaahda hubinta) oo u oggolow fulinta noocyada qaar ka mid ah koodka saxda ah, isticmaalka kaas oo hore u horseeday qalad. Hab-dhaqanka cusub waxa uu sidoo kale ka dhigayaa wax-ka-hortagga si aad u fudud;
  • Hirgelinta cusub ee qaababka associative ayaa lagu daray HashMap, ku salaysan codsiga qaab-dhismeedka Shaxda Swiss (si toos ah loo shubay hashbrown :: HashMap, haddii aan si cad loo sheegin, sida std :: HashMap, oo ku salaysan SipHash 1-3). Interface-ka software-ka ayaa weli ah sidii hore, iyo kala duwanaanshaha la dareemi karo horumariyaha ayaa hoos u dhigaya waxqabadka kordhay iyo isticmaalka xusuusta oo yaraaday;
  • Ku jira xamuulka maareeyaha xirmada ayaa lagu daray ikhtiyaarka "-offline", kaas oo awood u siinaya hawlgalka iyada oo aan la helin shabakada, kaas oo kaliya baakadaha lagu kaydiyay nidaamka maxaliga ah ayaa loo isticmaalaa marka la rakibayo ku-tiirsanaanta. Haddii ku tiirsanaanta aysan ku jirin kaydka maxalliga ah, qalad ayaa la tuurayaa. Si aad horay ugu sii shubto ku-tiirsanaanta khasnadda maxalliga ah ka hor inta aadan khadka tooska ahayn, waxaad isticmaali kartaa amarka "qaadashada xamuulka";
  • Hirgeliyay awoodda loogu yeero makro β€œdbg!” oo tilmaamaya dhawr doodood;
  • Sifada "const", taas oo go'aamisa suurtagalnimada in loo isticmaalo xaalad kasta oo aan joogto ahayn, ayaa loo isticmaalaa hababka
    Layout :: ka_size_align_aan la hubin,
    mem:: waxay u baahan tahay dhibic,
    NonNull:: lul iyo
    NonNull :: jilba;

  • Qayb cusub oo APIs ah ayaa loo wareejiyay qaybta xasilloon, oo ay ku jiraan hababka la xasiliyay
    hawl::Waker, hawl:: codbixin,
    VecDeque:: u wareeg_bidix, VecDeque:: u wareeg_midig,
    Akhri :: akhrin_vectored, Qor :: qor_vectored,
    Iterator::koobiyay,
    BorrowMut (ee xargaha) iyo str :: as_mut_ptr.

Source: opennet.ru

Add a comment