Rust 1.64 рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдкреНрд░рдХрд╛рд╢рди

Mozilla рдкреНрд░рдХрд▓реНрдкрд╛рджреНрд╡рд╛рд░реЗ рд╕реНрдерд╛рдкрд┐рдд, рдкрд░рдВрддреБ рдЖрддрд╛ рд╕реНрд╡рддрдВрддреНрд░ рдирд╛-рдирдлрд╛ рд╕рдВрд╕реНрдерд╛ Rust Foundation рдЪреНрдпрд╛ рд╕рдВрд░рдХреНрд╖рдгрд╛рдЦрд╛рд▓реА рд╡рд┐рдХрд╕рд┐рдд рдХреЗрд▓реЗрд▓реА Rust 1.64 рд╕рд╛рдорд╛рдиреНрдп-рдЙрджреНрджреЗрд╢реАрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдгреНрдпрд╛рдд рдЖрд▓реА рдЖрд╣реЗ. рднрд╛рд╖рд╛ рдореЗрдорд░реА рд╕реБрд░рдХреНрд╖рд┐рддрддреЗрд╡рд░ рд▓рдХреНрд╖ рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рддреЗ рдЖрдгрд┐ рдХрдЪрд░рд╛ рдЧреЛрд│рд╛ рдХрд░рдгрд╛рд░реЗ рдЖрдгрд┐ рд░рдирдЯрд╛рдЗрдордЪрд╛ рд╡рд╛рдкрд░ рдЯрд╛рд│реВрди рдЙрдЪреНрдЪ рдЬреЙрдм рд╕рдорд╛рдВрддрд░рддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдгреНрдпрд╛рдЪреЗ рд╕рд╛рдзрди рдкреНрд░рджрд╛рди рдХрд░рддреЗ (рд░рдирдЯрд╛рдЗрдо рдореВрд▓рднреВрдд рдкреНрд░рд╛рд░рдВрдн рдЖрдгрд┐ рдорд╛рдирдХ рд▓рд╛рдпрдмреНрд░рд░реАрдЪреА рджреЗрдЦрднрд╛рд▓ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХрдореА рдХреЗрд▓рд╛ рдЬрд╛рддреЛ).

рд░рд╕реНрдЯрдЪреНрдпрд╛ рдореЗрдорд░реА рд╣рд╛рддрд╛рд│рдгреНрдпрд╛рдЪреНрдпрд╛ рдкрджреНрдзрддреА рдкреЙрдЗрдВрдЯрд░ рд╣рд╛рддрд╛рд│рддрд╛рдирд╛ рд╡рд┐рдХрд╛рд╕рдХрд╛рд▓рд╛ рддреНрд░реБрдЯреАрдВрдкрд╛рд╕реВрди рд╡рд╛рдЪрд╡рддрд╛рдд рдЖрдгрд┐ рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рдореЗрдорд░реА рд╣рд╛рддрд╛рд│рдгреАрдореБрд│реЗ рдЙрджреНрднрд╡рдгрд╛рд▒реНрдпрд╛ рд╕рдорд╕реНрдпрд╛рдВрдкрд╛рд╕реВрди рд╕рдВрд░рдХреНрд╖рдг рдХрд░рддрд╛рдд, рдЬрд╕реЗ рдХреА рдореЗрдорд░реА рдПрд░рд┐рдпрд╛ рдореЛрдХрд│рд╛ рдЭрд╛рд▓реНрдпрд╛рдирдВрддрд░ рддреНрдпрд╛рдд рдкреНрд░рд╡реЗрд╢ рдХрд░рдгреЗ, рдирд▓ рдкреЙрдЗрдВрдЯрд░реНрд╕рдЪрд╛ рд╕рдВрджрд░реНрдн рдШреЗрдгреЗ, рдмрдлрд░ рдУрд╡реНрд╣рд░рд░рдиреНрд╕ рдЗ. рд▓рд╛рдпрдмреНрд░рд░реА рд╡рд┐рддрд░реАрдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдмрд┐рд▓реНрдб рдкреНрд░рджрд╛рди рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдгрд┐ рдЕрд╡рд▓рдВрдмрд┐рддреНрд╡ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдкреНрд░рдХрд▓реНрдк рдХрд╛рд░реНрдЧреЛ рдкреЕрдХреЗрдЬ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЛ. crates.io рд░реЗрдкреЙрдЬрд┐рдЯрд░реА рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рд▓рд╛рдпрдмреНрд░рд░реАрд╕рд╛рдареА рд╕рдорд░реНрдерд┐рдд рдЖрд╣реЗ.

рд╕рдВрджрд░реНрдн рддрдкрд╛рд╕рдгреА, рдСрдмреНрдЬреЗрдХреНрдЯрдЪреНрдпрд╛ рдорд╛рд▓рдХреАрдЪрд╛ рдорд╛рдЧреЛрд╡рд╛ рдареЗрд╡рдгреЗ, рдСрдмреНрдЬреЗрдХреНрдЯ рд▓рд╛рдЗрдлрдЯрд╛рдЗрдо (рд╕реНрдХреЛрдк) рдЪрд╛ рдорд╛рдЧреЛрд╡рд╛ рдареЗрд╡рдгреЗ рдЖрдгрд┐ рдХреЛрдб рдПрдХреНрдЭрд┐рдХреНрдпреВрд╢рди рджрд░рдореНрдпрд╛рди рдореЗрдорд░реА рдНрдХреНрд╕реЗрд╕рдЪреНрдпрд╛ рдЕрдЪреВрдХрддреЗрдЪреЗ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдгреЗ рдпрд╛рджреНрд╡рд╛рд░реЗ рдореЗрдорд░реА рд╕реБрд░рдХреНрд╖рд┐рддрддрд╛ рд░рд╕реНрдЯрдордзреНрдпреЗ рдХрдВрдкрд╛рдЗрд▓ рд╡реЗрд│реА рдкреНрд░рджрд╛рди рдХреЗрд▓реА рдЬрд╛рддреЗ. рд░рд╕реНрдЯ рдкреВрд░реНрдгрд╛рдВрдХ рдУрд╡реНрд╣рд░рдлреНрд▓реЛрдкрд╛рд╕реВрди рд╕рдВрд░рдХреНрд╖рдг рджреЗрдЦреАрд▓ рдкреНрд░рджрд╛рди рдХрд░рддреЗ, рд╡рд╛рдкрд░рдгреНрдпрд╛рдкреВрд░реНрд╡реА рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓ рд╡реНрд╣реЕрд▓реНрдпреВрдЬрдЪреЗ рдЕрдирд┐рд╡рд╛рд░реНрдп рдЖрд░рдВрдн рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ, рдорд╛рдирдХ рд▓рд╛рдпрдмреНрд░рд░реАрдордзреНрдпреЗ рддреНрд░реБрдЯреА рдЪрд╛рдВрдЧрд▓реНрдпрд╛ рдкреНрд░рдХрд╛рд░реЗ рд╣рд╛рддрд╛рд│рддреЗ, рдбрд┐рдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рд╕рдВрджрд░реНрдн рдЖрдгрд┐ рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓реНрд╕рдЪреА рд╕рдВрдХрд▓реНрдкрдирд╛ рд▓рд╛рдЧреВ рдХрд░рддреЗ, рддрд╛рд░реНрдХрд┐рдХ рддреНрд░реБрдЯреА рдХрдореА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдордЬрдмреВрдд рд╕реНрдерд┐рд░ рдЯрд╛рдпрдкрд┐рдВрдЧ рдСрдлрд░ рдХрд░рддреЗ.

рдореБрдЦреНрдп рдирд╡рдХрд▓реНрдкрдирд╛:

  • рдкрд░реНрдпрд╛рд╡рд░рдгрд╛рд╕рд╛рдареА рд╡рд╛рдврд▓реЗрд▓реНрдпрд╛ рдЧрд░рдЬрд╛ Linux рдХрдВрдкрд╛рдпрд▓рд░, рдХрд╛рд░реНрдЧреЛ рдкреЕрдХреЗрдЬ рдореЕрдиреЗрдЬрд░ рдЖрдгрд┐ рд╕реНрдЯрдБрдбрд░реНрдб рд▓рд╛рдпрдмреНрд░рд░реА libstd рдордзреНрдпреЗ, Glibc рд╕рд╛рдареАрдЪреНрдпрд╛ рдХрд┐рдорд╛рди рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╡реГрддреНрддреА 2.11 рд╡рд░реВрди 2.17 рдкрд░реНрдпрдВрдд рд╡рд╛рдврд╡рдгреНрдпрд╛рдд рдЖрд▓реНрдпрд╛ рдЖрд╣реЗрдд, рдЖрдгрд┐ рдХрд░реНрдирд▓реНрд╕рдордзреНрдпреЗ Linux рдЖрд╡реГрддреНрддреА реи.рем.рейреи рдкрд╛рд╕реВрди рей.реи рдкрд░реНрдпрдВрдд. рд╣реЗ рдирд┐рд░реНрдмрдВрдз libstd рд╡рд╛рдкрд░реВрди рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд░рд╕реНрдЯ ре▓рдкреНрд▓рд┐рдХреЗрд╢рди рдПрдХреНрдЭрд┐рдХреНрдпреБрдЯреЗрдмрд▓реНрд╕рдирд╛ рджреЗрдЦреАрд▓ рд▓рд╛рдЧреВ рд╣реЛрддрд╛рдд. RHEL 7, SLES 12-SP5 рдЖрдгрд┐ рдЗрддрд░ рдбрд┐рд╕реНрдЯреНрд░рд┐рдмреНрдпреБрд╢рдиреНрд╕ рдирд╡реАрди рдЖрд╡рд╢реНрдпрдХрддрд╛рдВрдЪреЗ рдкрд╛рд▓рди рдХрд░рддрд╛рдд. Debian рдПрдХреНрд╕рдПрдирдпреВрдПрдордПрдХреНрд╕ рдЖрдгрд┐ Ubuntu резрек.режрек. RHEL 6, SLES 11-SP4 рд╕рд╛рдареАрдЪрд╛ рд╕рдкреЛрд░реНрдЯ рдмрдВрдж рдХреЗрд▓рд╛ рдЬрд╛рдИрд▓. Debian рдПрдХреНрд╕рдПрдирдпреВрдПрдордПрдХреНрд╕ рдЖрдгрд┐ Ubuntu резреи.режрек. рдЬреБрдиреНрдпрд╛ рдХрд░реНрдирд▓ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рд╡рд╛рддрд╛рд╡рд░рдгрд╛рдд рд░рд╕реНрдЯ рдЯреВрд▓рдЪреЗрди-рдирд┐рд░реНрдорд┐рдд рдПрдХреНрдЭрд┐рдХреНрдпреБрдЯреЗрдмрд▓реНрд╕ рд╡рд╛рдкрд░рдгрд╛рд▒реНрдпрд╛ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрд╕рд╛рдареА. Linuxрд╕реБрд╕рдВрдЧрддрддрд╛ рдЯрд┐рдХрд╡реВрди рдареЗрд╡рдгреНрдпрд╛рд╕рд╛рдареА, рддреНрдпрд╛рдВрдиреА рддреНрдпрд╛рдВрдЪреНрдпрд╛ рд╕рд┐рд╕реНрдЯрдореНрд╕ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рд╛рд╡реНрдпрд╛рдд, рдЬреБрдиреНрдпрд╛ рдХрдВрдкрд╛рдЗрд▓рд░ рд░рд┐рд▓реАрдЬрд╡рд░ рд░рд╛рд╣рд╛рд╡реЗ рдХрд┐рдВрд╡рд╛ рдЗрдВрдЯрд░рд▓реЗрдпрд░реНрд╕рд╕рд╣ рддреНрдпрд╛рдВрдЪреА рд╕реНрд╡рддрдГрдЪреА libstd рд╢рд╛рдЦрд╛ рд╕реНрд╡рддрдВрддреНрд░рдкрдгреЗ рд╕рд╛рдВрднрд╛рд│рд╛рд╡реА, рдЕрд╕реЗ рд╕реБрдЪрд╡рд▓реЗ рдЬрд╛рддреЗ.

    рдЬреБрдиреНрдпрд╛рдВрд╕рд╛рдареА рд╕рдорд░реНрдерди рд╕рдорд╛рдкреНрдд рд╣реЛрдгреНрдпрд╛рдорд╛рдЧреАрд▓ рдХрд╛рд░рдгрд╛рдВрдкреИрдХреА рдПрдХ LinuxрдЬреБрдиреНрдпрд╛ рд╡рд╛рддрд╛рд╡рд░рдгрд╛рдВрд╢реА рд╕реБрд╕рдВрдЧрддрддрд╛ рдХрд╛рдпрдо рдареЗрд╡рдгреНрдпрд╛рд╕рд╛рдареА рдорд░реНрдпрд╛рджрд┐рдд рд╕рдВрд╕рд╛рдзрдиреЗ рдЕрд╕рд▓реНрдпрд╛рдЪрд╛ рдЙрд▓реНрд▓реЗрдЦ рдкреНрд░рдгрд╛рд▓реАрдВрдордзреНрдпреЗ рдЖрд╣реЗ. LLVM рдЖрдгрд┐ рдХреНрд░реЙрд╕-рдХрдВрдкрд╛рдпрд▓реЗрд╢рди рд╕рд╛рдзрдирд╛рдВрд╕рд╛рдареА рд╡рд╛рдврд▓реЗрд▓реНрдпрд╛ рдЖрд╡реГрддреНрддреАрдЪреНрдпрд╛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд▓рдХреНрд╖рд╛рдд рдШреЗрддрд╛, рдХрдВрдЯреАрдиреНрдпреБрдЕрд╕ рдЗрдВрдЯрд┐рдЧреНрд░реЗрд╢рди рд╕рд┐рд╕реНрдЯреАрдордордзреНрдпреЗ рдЪреЗрдХ-рдЗрди рдХрд░рддрд╛рдирд╛ рдЬреБрдиреНрдпрд╛ Glibc рдЪреНрдпрд╛ рд╕рдорд░реНрдердирд╛рд╕рд╛рдареА рдЬреБрдиреНрдпрд╛ рд╕рд╛рдзрдирд╛рдВрдЪрд╛ рд╡рд╛рдкрд░ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдХрд░реНрдирд▓ рдЖрд╡реГрддреНрддреАрдЪреНрдпрд╛ рд╡рд╛рдврд▓реЗрд▓реНрдпрд╛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдпрд╛, рдЬреБрдиреНрдпрд╛ рдХрд░реНрдирд▓рд╢реА рд╕реБрд╕рдВрдЧрддрддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдордзреНрдпрд╕реНрдерд╛рдВрдЪреА рджреЗрдЦрднрд╛рд▓ рдХрд░рдгреНрдпрд╛рдЪреА рдЧрд░рдЬ рди рднрд╛рд╕рддрд╛ libstd рдордзреАрд▓ рдирд╡реАрди рд╕рд┐рд╕реНрдЯреАрдо рдХреЙрд▓реНрд╕ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдХреНрд╖рдорддреЗрдореБрд│реЗ рдЖрд╣реЗрдд.

  • IntoFuture рд╡реИрд╢рд┐рд╖реНрдЯреНрдп рд╕реНрдерд┐рд░ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ, рдЬреЗ IntoIterator рд╕рд╛рд░рдЦреЗ рджрд┐рд╕рддреЗ, рдкрд░рдВрддреБ тАЬfor...in...тАЭ loops рдРрд╡рдЬреА тАЬ.awaitтАЭ рд╡рд╛рдкрд░реВрди рдирдВрддрд░рдЪреНрдпрд╛рдкреЗрдХреНрд╖рд╛ рд╡реЗрдЧрд│реЗ рдЖрд╣реЗ. IntoFuture рд╕рд╣ рдПрдХрддреНрд░рд┐рдд рдХреЗрд▓реНрдпрд╛рд╡рд░, ".await" рдХреАрд╡рд░реНрдб рдХреЗрд╡рд│ рднрд╡рд┐рд╖реНрдпрд╛рддреАрд▓ рд╡реИрд╢рд┐рд╖реНрдЯреНрдпрд╛рдЪреАрдЪ рдирд╡реНрд╣реЗ рддрд░ рднрд╡рд┐рд╖реНрдпрд╛рдд рд░реВрдкрд╛рдВрддрд░рд┐рдд рд╣реЛрдК рд╢рдХрдгрд╛рд▒реНрдпрд╛ рдЗрддрд░ рдХреЛрдгрддреНрдпрд╛рд╣реА рдкреНрд░рдХрд╛рд░рдЪреА рджреЗрдЦреАрд▓ рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░реВ рд╢рдХрддреЛ.
  • рд░рд╕реНрдЯ-рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдпреБрдЯрд┐рд▓рд┐рдЯреА рд░рд╕реНрдЯ рд░рд┐рд▓реАрдЭрд╕рд╣ рдкреНрд░рджрд╛рди рдХреЗрд▓реЗрд▓реНрдпрд╛ рдпреБрдЯрд┐рд▓рд┐рдЯреАрдЬрдЪреНрдпрд╛ рд╕рдВрдЧреНрд░рд╣рд╛рдордзреНрдпреЗ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЖрд╣реЗ. рдпреБрдЯрд┐рд▓рд┐рдЯреА рд░рд╕реНрдЯрдЕрдк (рд░рд╕реНрдЯрдЕрдк рдШрдЯрдХ ре▓рдб рд░рд╕реНрдЯ-рд╡рд┐рд╢реНрд▓реЗрд╖рдХ) рд╡рд╛рдкрд░реВрди рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рдирд╕рд╛рдареА рджреЗрдЦреАрд▓ рдЙрдкрд▓рдмреНрдз рдЖрд╣реЗ.
  • рдХрд╛рд░реНрдЧреЛ рдкреЕрдХреЗрдЬ рдореЕрдиреЗрдЬрд░рдордзреНрдпреЗ рд░рд╕реНрдЯ рд╡реНрд╣рд░реНрдЬрди рдЖрдгрд┐ рд░рд┐рдкреЙрдЭрд┐рдЯрд░реА URL рд╕рд╛рд░рдЦреНрдпрд╛ рдкреЕрдХреЗрдЬреЗрд╕рдордзреАрд▓ рд╕рд╛рдорд╛рдиреНрдп рдлреАрд▓реНрдб рд╡реНрд╣реЕрд▓реНрдпреВрдЬрдЪреА рдбреБрдкреНрд▓рд┐рдХреЗрд╢рди рджреВрд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╡рд░реНрдХрд╕реНрдкреЗрд╕ рдЗрдирд╣реЗрд░рд┐рдЯрдиреНрд╕рдЪрд╛ рд╕рдорд╛рд╡реЗрд╢ рд╣реЛрддреЛ. рдПрдХрд╛рдЪ рд╡реЗрд│реА рдЕрдиреЗрдХ рд▓рдХреНрд╖реНрдп рдкреНрд▓реЕрдЯрдлреЙрд░реНрдорд╕рд╛рдареА рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕рдорд░реНрдерди рджреЗрдЦреАрд▓ рдЬреЛрдбрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ (рдЖрдкрдг рдЖрддрд╛ тАЬ--рд▓рдХреНрд╖реНрдптАЭ рдкрд░реНрдпрд╛рдпрд╛рдордзреНрдпреЗ рдПрдХрд╛рдкреЗрдХреНрд╖рд╛ рдЬрд╛рд╕реНрдд рдкреЕрд░рд╛рдореАрдЯрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реВ рд╢рдХрддрд╛).
  • API рдЪрд╛ рдПрдХ рдирд╡реАрди рднрд╛рдЧ рд╕реНрдерд┐рд░ рд╢реНрд░реЗрдгреАрдордзреНрдпреЗ рд╣рд▓рд╡рд┐рд▓рд╛ рдЧреЗрд▓рд╛ рдЖрд╣реЗ, рдЬреНрдпрд╛рдордзреНрдпреЗ рдкрджреНрдзрддреА рдЖрдгрд┐ рдЧреБрдгрдзрд░реНрдорд╛рдВрдЪреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рд╕реНрдерд┐рд░ рдХреЗрд▓реА рдЧреЗрд▓реА рдЖрд╣реЗ:
    • рднрд╡рд┐рд╖реНрдп :: рднрд╡рд┐рд╖реНрдпрд╛рдд
    • num::NonZero*::checked_mul
    • num::NonZero*::checked_pow
    • num::NonZero*::saturating_mul
    • num::NonZero*::saturating_pow
    • рд╕рдВрдЦреНрдпрд╛::NonZeroI*::abs
    • num::NonZeroI*::checked_abs
    • рд╕рдВрдЦреНрдпрд╛::NonZeroI*::overflowing_abs
    • num::NonZeroI*::saturating_abs
    • рд╕рдВрдЦреНрдпрд╛::NonZeroI*::unsigned_abs
    • num::NonZeroI*::wrapping_abs
    • num::NonZeroU*::checked_add
    • num::NonZeroU*::checked_next_power_of_two
    • num::NonZeroU*::saturating_add
    • os::unix::process::CommandExt::process_group
    • os::windows::fs::FileTypeExt::is_symlink_dir
    • os::windows::fs::FileTypeExt::is_symlink_file
  • рд╕реА-рдХрдВрдкреЕрдЯрд┐рдмрд▓ рдкреНрд░рдХрд╛рд░, рдкреВрд░реНрд╡реА std::ffi рдореЙрдбреНрдпреВрд▓рдордзреНрдпреЗ рд╕реНрдерд┐рд░ рдХреЗрд▓реЗрд▓реЗ, рдХреЛрд░ рдЖрдгрд┐ alloc рд▓рд╛рдпрдмреНрд░рд░реАрдордзреНрдпреЗ рдЬреЛрдбрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗрдд:
    • core::ffi::CStr
    • core::ffi::FromBytesWithNulError
    • alloc::ffi::CSstring
    • alloc::ffi::FromVecWithNulError
    • alloc::ffi::IntoStringError
    • alloc::ffi::NulError
  • рдкреВрд░реНрд╡реА std::os::raw module рдордзреНрдпреЗ рд╕реНрдерд┐рд░ рдХреЗрд▓реЗрд▓реЗ C рдкреНрд░рдХрд╛рд░ core::ffi рдЖрдгрд┐ std::ffi рдореЙрдбреНрдпреВрд▓реНрд╕рдордзреНрдпреЗ рдЬреЛрдбрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗрдд (рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, c_uint рдЖрдгрд┐ c_ulong рдкреНрд░рдХрд╛рд░ uint рдЖрдгрд┐ ulong C рдкреНрд░рдХрд╛рд░рд╛рдВрд╕рд╛рдареА рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХреЗрд▓реЗ рдЖрд╣реЗрдд):
    • ffi::c_char
    • ffi::c_double
    • ffi::c_float
    • ffi::c_int
    • ffi::c_long
    • ffi::c_longlong
    • ffi::c_schar
    • ffi::c_short
    • ffi::c_uchar
    • ffi::c_uint
    • ffi::c_ulong
    • ffi::c_ulonglong
    • ffi::c_ushort
  • рдкреЛрд▓ рдореЗрдХреЕрдирд┐рдЭрдорд╕рд╣ рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕рд╛рдареА рд▓реЛ-рд▓реЗрд╡реНрд╣рд▓ рд╣рдБрдбрд▓рд░ рд╕реНрдерд┐рд░ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗрдд (рднрд╡рд┐рд╖реНрдпрд╛рдд рдПрдХ рд╕рд░рд▓реАрдХреГрдд API рдкреНрд░рджрд╛рди рдХрд░рдгреНрдпрд╛рдЪреА рдпреЛрдЬрдирд╛ рдЖрд╣реЗ рдЬреНрдпрд╛рд╕рд╛рдареА рдкреБрд▓ рдЖрдгрд┐ рдкрд┐рди рд╕рд╛рд░рдЦреНрдпрд╛ рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рд╕рдВрд░рдЪрдирд╛ рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╛рд╣реА):
    • рднрд╡рд┐рд╖реНрдп::poll_fn
    • рдХрд╛рд░реНрдп::рддрдпрд╛рд░!
  • "const" рд╡рд┐рд╢реЗрд╖рддрд╛, рдЬреА рд╕реНрдерд┐рд░рд╛рдВрдХрд╛рдВрдРрд╡рдЬреА рдХреЛрдгрддреНрдпрд╛рд╣реА рд╕рдВрджрд░реНрднрд╛рдд рд╡рд╛рдкрд░рдгреНрдпрд╛рдЪреА рд╢рдХреНрдпрддрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреЗ, рд╕реНрд▓рд╛рдЗрд╕::from_raw_parts рдлрдВрдХреНрд╢рдирдордзреНрдпреЗ рд╡рд╛рдкрд░рд▓реА рдЬрд╛рддреЗ.
  • рдбреЗрдЯрд╛ рдЕрдзрд┐рдХ рд╕рдВрдХреНрд╖рд┐рдкреНрддрдкрдгреЗ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, Ipv4Addr, Ipv6Addr, SocketAddrV4 рдЖрдгрд┐ SocketAddrV6 рд╕рдВрд░рдЪрдирд╛рдВрдЪрд╛ рдореЗрдорд░реА рд▓реЗрдЖрдЙрдЯ рдмрджрд▓рд▓рд╛ рдЖрд╣реЗ. рд╕реНрдЯреНрд░рдХреНрдЪрд░реНрд╕рдЪреНрдпрд╛ рд▓реЛ-рд▓реЗрд╡реНрд╣рд▓ рдореЕрдирд┐рдкреНрдпреБрд▓реЗрд╢рдирд╕рд╛рдареА std::mem::transmute рд╡рд╛рдкрд░рдгрд╛рд▒реНрдпрд╛ рд╕рд┐рдВрдЧрд▓ рдХреНрд░реЗрдЯ рдкреЕрдХреЗрдЬрдордзреНрдпреЗ рд╕реБрд╕рдВрдЧрддрддрд╛ рд╕рдорд╕реНрдпрд╛ рдЕрд╕реВ рд╢рдХрддреЗ.
  • рдкреНрд▓реЕрдЯрдлреЙрд░реНрдорд╕рд╛рдареА рд░рд╕реНрдЯ рдХрдВрдкрд╛рдпрд▓рд░ рдмрд┐рд▓реНрдбрдордзреНрдпреЗ Windows PGO рдСрдкреНрдЯрд┐рдорд╛рдпрдЭреЗрд╢рди (рдкреНрд░реЛрдлрд╛рдЗрд▓-рдЧрд╛рдИрдбреЗрдб рдСрдкреНрдЯрд┐рдорд╛рдпрдЭреЗрд╢рди) рд╡рд╛рдкрд░рдгреНрдпрд╛рдд рдЖрд▓реЗ, рдЬреНрдпрд╛рдореБрд│реЗ рдХреЛрдб рд╕рдВрдХрд▓рдирд╛рдЪреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ 10-20% рдиреЗ рд╡рд╛рдврд╡рдгреЗ рд╢рдХреНрдп рдЭрд╛рд▓реЗ.
  • рдХрдВрдкрд╛рдЗрд▓рд░рдиреЗ рдХрд╛рд╣реА рд╕рдВрд░рдЪрдирд╛рдВрдордзреНрдпреЗ рди рд╡рд╛рдкрд░рд▓реЗрд▓реНрдпрд╛ рдлреАрд▓реНрдбрдмрджреНрджрд▓ рдПрдХ рдирд╡реАрди рдЪреЗрддрд╛рд╡рдгреА рд▓рд╛рдЧреВ рдХреЗрд▓реА рдЖрд╣реЗ.

рдпрд╛рд╡реНрдпрддрд┐рд░рд┐рдХреНрдд, рддреБрдореНрд╣реА Gccrs рдкреНрд░рдХрд▓реНрдк (GCC Rust) рджреНрд╡рд╛рд░реЗ рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдЖрдгрд┐ GCC рдордзреНрдпреЗ рд╕рдорд╛рд╡реЗрд╢рд╛рд╕рд╛рдареА рдордВрдЬреВрд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ Rust рднрд╛рд╖рд╛ рдХрдВрдкрд╛рдЗрд▓рд░рдЪреНрдпрд╛ рдкрд░реНрдпрд╛рдпреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрдЪреНрдпрд╛ рд╡рд┐рдХрд╛рд╕рд╛рд╡рд░реАрд▓ рд╕реНрдерд┐рддреА рдЕрд╣рд╡рд╛рд▓рд╛рдЪреА рдиреЛрдВрдж рдШреЗрдК рд╢рдХрддрд╛. рдлреНрд░рдВрдЯрдПрдВрдб рд╕рдорд╛рдХрд▓рд┐рдд рдХреЗрд▓реНрдпрд╛рдирдВрддрд░, LLVM рдбреЗрд╡реНрд╣рд▓рдкрдореЗрдВрдЯреНрд╕ рд╡рд╛рдкрд░реВрди рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реНрдпрд╛ рд░рд╕реНрдЯрд╕реА рдХрдВрдкрд╛рдЗрд▓рд░рдЪреА рд╕реНрдерд╛рдкрдирд╛ рди рдХрд░рддрд╛ рд░рд╕реНрдЯ рднрд╛рд╖реЗрддреАрд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдореНрд╕ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдорд╛рдирдХ GCC рдЯреВрд▓реНрд╕рдЪрд╛ рд╡рд╛рдкрд░ рдХреЗрд▓рд╛ рдЬрд╛рдК рд╢рдХрддреЛ. рдЬреЛрдкрд░реНрдпрдВрдд рд╡рд┐рдХрд╛рд╕ рдорд╛рд░реНрдЧрд╛рд╡рд░ рдЖрд╣реЗ, рдЖрдгрд┐ рдХреЛрдгрддреНрдпрд╛рд╣реА рдЕрдирдкреЗрдХреНрд╖рд┐рдд рд╕рдорд╕реНрдпрд╛ рд╡рдЧрд│рддрд╛, рд░рд╕реНрдЯ рдлреНрд░рдВрдЯрдПрдВрдб рдкреБрдвреАрд▓ рд╡рд░реНрд╖реА рдореЗ рдордзреНрдпреЗ рд╢реЗрдбреНрдпреВрд▓ рдХреЗрд▓реЗрд▓реНрдпрд╛ GCC 13 рд░рд┐рд▓реАрдЭрдордзреНрдпреЗ рд╕рдорд╛рдХрд▓рд┐рдд рдХреЗрд▓рд╛ рдЬрд╛рдИрд▓. рд░рд╕реНрдЯрдЪреА GCC 13 рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдмреАрдЯрд╛ рд╕реНрдерд┐рддреАрдд рдЕрд╕реЗрд▓, рдЕрджреНрдпрд╛рдк рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ рд╕рдХреНрд╖рдо рдХреЗрд▓реЗрд▓реА рдирд╛рд╣реА.

рд╕реНрддреНрд░реЛрдд: opennet.ru

DDoS рд╕рдВрд░рдХреНрд╖рдг, VPS VDS рд╕рд░реНрд╡реНрд╣рд░ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рд╕рд╛рдЗрдЯрд╕рд╛рдареА рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдЦрд░реЗрджреА рдХрд░рд╛ ЁЯФе рдбреАрдбреЙрд╕ рд╕рдВрд░рдХреНрд╖рдгрд╛рд╕рд╣ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╡реЗрдмрд╕рд╛рдЗрдЯ рд╣реЛрд╕реНрдЯрд┐рдВрдЧ, рд╡реНрд╣реАрдкреАрдПрд╕ (VPS) рд╡реНрд╣реАрдбреАрдПрд╕ (VDS) рд╕рд░реНрд╡реНрд╣рд░реНрд╕ рдЦрд░реЗрджреА рдХрд░рд╛ | ProHoster