Umhlwa 1.62 Ukukhutshwa koLwimi lweNkqubo

Ukukhutshwa kolwimi lwenkqubo ye-Rust 1.62, eyasekwa yiprojekthi ye-Mozilla, kodwa ngoku iphuhliswe phantsi kombutho ozimeleyo ongenzi nzuzo i-Rust Foundation, ipapashiwe. Ulwimi lugxininise ekukhuselweni kwememori kwaye lubonelela ngeendlela zokufikelela kwi-parallelism ephezulu yemisebenzi ngelixa ugwema ukusetyenziswa komqokeleli wenkunkuma kunye nexesha lokuqhuba (ixesha lokuqhuba liyancitshiswa ekuqaliseni okusisiseko kunye nokugcinwa kwelayibrari esemgangathweni).

Iindlela zokuphatha imemori ye-Rust zigcina umphuhlisi kwiimpazamo xa ulawula izikhombisi kwaye ukhusele kwiingxaki ezivela ngenxa yokuphathwa kwememori ekwinqanaba elisezantsi, njengokufikelela kwindawo yememori emva kokuba ikhululiwe, ukususa ireferensi yezalathisi ezingenanto, ukugqithiswa kwe-buffer, njl. Ukusasaza amathala eencwadi, ukubonelela ngokwakha kunye nokulawula ukuxhomekeka, iprojekthi iphuhlisa umphathi wephakheji yeCargo. Uvimba we-crates.io uyaxhaswa kukusingatha amathala eencwadi.

Ukhuseleko lwenkumbulo lubonelelwa kwiRust ngexesha lokudibanisa ngokujongwa kwereferensi, ukugcina umkhondo wobunini bento, ukugcina umkhondo wobomi bento (i-scopes), kunye nokuvavanya ukuchaneka kokufikelela kwimemori ngexesha lokwenziwa kwekhowudi. Umhlwa ukwabonelela ngokhuseleko ngokuchasene nokuphuphuma kwenani elipheleleyo, kufuna ukuqaliswa okunyanzelekileyo kwamaxabiso aguquguqukayo ngaphambi kokusetyenziswa, iphatha iimpazamo ngcono kwithala leencwadi elisemgangathweni, isebenzisa ingqikelelo yeembekiselo ezingenakuguquguquka kunye nezinto eziguquguqukayo ngokungagqibekanga, ibonelela ngochwethezo olomeleleyo ukuze kuncitshiswe iimpazamo ezinengqiqo.

Iinguqulelo eziphambili:

  • Umphathi wephakheji "wempahla" unikeza umyalelo othi "yongeza", okuvumela ukuba ungeze ukuxhomekeka okutsha kwi-Cargo.toml manifest okanye utshintshe ukuxhomekeka ekhoyo kumgca womyalelo. Umyalelo ukwakuvumela ukuba ucacise iimpawu zomntu ngamnye kunye noguqulelo, umzekelo: cargo add serde -features derive cargo add nom@5
  • Kongezwe ukukwazi ukusebenzisa "#[i-default(Okumiselweyo)]" nge-enums apho ukhetho olungagqibekanga luchazwa kusetyenziswa "#[okwendalo]" uphawu. #[ukufumana (Okumiselweyo)] enum Mhlawumbi {#[okungagqibekanga] Akukho nto, into (T),}
  • Kwiqonga le-Linux, ukuphunyezwa okuxineneyo nokukhawulezayo kwendlela yongqamaniso ye-Mutex isetyenziswa, ngokusekelwe kusetyenziso lweefutexes ezibonelelwa yiLinux kernel. Ngokungafaniyo nokuphunyezwa kwangaphambili okusekwe kwithala leencwadi le-pthreads, inguqulelo entsha isebenzisa kuphela i-5 bytes endaweni yama-40 ukugcina i-Mutex state.Kwangokunjalo, iindlela zokutshixa i-Condvar kunye ne-RwLock zikhutshelwe kwi-futex.
  • Inqanaba lesibini lenkxaso ye-x86_64-engaziwa-akukho ndawo ekujoliswe kuyo sele iphunyeziwe, eyenzelwe ukuvelisa iifayile ezisebenzisekayo ezinokusebenza ngaphandle kwenkqubo yokusebenza. Umzekelo, iqonga ekujoliswe kulo linokusetyenziswa xa kubhalwa amacandelo e-kernel. Inqanaba lesibini lenkxaso libandakanya isiqinisekiso sendibano.
  • Inqanaba lesithathu lenkxaso liphunyeziwe kwiiplatifti ze-aarch64-pc-windows-gnullvm kunye ne-x86_64-pc-windows-gnullvm. Inqanaba lesithathu libandakanya inkxaso eyisiseko, kodwa ngaphandle kovavanyo oluzenzekelayo, ukupapasha ukwakha kwasemthethweni, okanye ukujonga ukuba ikhowudi inokwakhiwa.
  • Inxalenye entsha ye-API iye yasiwa kudidi oluzinzileyo, kubandakanywa iindlela kunye nokuphunyezwa kweempawu ziye zazinziswa:
    • bool::khona_ezinye
    • f32:: iyonke_cmp
    • f64:: iyonke_cmp
    • Stdin::imigca
    • windows::CommandExt::raw_arg
    • impl ixabiso elimiselweyo le-AssertUnwindSafe
    • Ukusuka > yeRc
    • Ukusuka > ye-Arc <[u8]>
    • I-FusedIterator ye-EncodeWide

    umthombo: opennet.ru

Yongeza izimvo