рд╣рдо рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзреА рдХреЛрдб рднреА рдХреНрдпреЛрдВ рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░реЛрд╕реЗрд╕рд░ рдиреЗ рдбрд┐рдкреНрд╕ рдХреЗ рд╕рд╛рде рдмрдврд╝рдирд╛ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рдФрд░ рдХреЛрд░ рдХреЗ рд╕рд╛рде рдмрдврд╝рдиреЗ рд▓рдЧреЗред рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЛрд░ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣рд░ рд╕рд╛рд▓ рдмрдврд╝ рд░рд╣реА рд╣реИ, рдФрд░ рд╣рдо рдЙрдиреНрд╣реЗрдВ рдкреНрд░рднрд╛рд╡реА рдврдВрдЧ рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЧреЛ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдмрдирд╛рдИ рдЧрдИ рднрд╛рд╖рд╛ рд╣реИред рдкреНрд░рд▓реЗрдЦрди рдРрд╕рд╛ рдХрд╣рддрд╛ рд╣реИред
рд╣рдо Go рд▓реЗрддреЗ рд╣реИрдВ, рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзреА рдХреЛрдб рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рдмреЗрд╢рдХ, рд╣рдо рдЙрдореНрдореАрдж рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╣рдо рдЕрдкрдиреЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЛрд░ рдХреА рд╢рдХреНрддрд┐ рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рд░реЛрдХ рд╕рдХрддреЗ рд╣реИрдВред рдХреНрдпрд╛ рдРрд╕рд╛ рд╣реИ?
рдореЗрд░рд╛ рдирд╛рдо Artemy рд╣реИред рдпрд╣ рдкреЛрд╕реНрдЯ рдЧреЛрдлрд░рдХреЙрди рд░реВрд╕ рдХреЗ рд╕рд╛рде рдореЗрд░реА рдмрд╛рдд рдХрд╛ рдПрдХ рдореБрдХреНрдд рдкреНрд░рддрд┐рд▓реЗрдЦ рд╣реИред рдпрд╣ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЛ рдкреНрд░реЗрд░рдгрд╛ рджреЗрдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рдХреЗ рд░реВрдк рдореЗрдВ рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛ рдЬреЛ рдпрд╣ рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ рдЕрдЪреНрдЫрд╛, рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзреА рдХреЛрдб рдХреИрд╕реЗ рд▓рд┐рдЦрдирд╛ рд╣реИред
рдЧреЛрдлрд░рдХреЛрди рд░реВрд╕ рд╕рдореНрдореЗрд▓рди рд╕реЗ рд╡реАрдбрд┐рдпреЛ
рд╕рд╣рднрд╛рдЧрд┐рддрд╛ рдореЙрдбрд▓
рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреНрдпрд╛ рдЧреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИ, рдЖрдЗрдП рджреЛ рдЗрдВрдЯрд░реИрдХреНрд╢рди рдореЙрдбрд▓ рджреЗрдЦреЗрдВ: рд╕рд╛рдЭрд╛ рдХреА рдЧрдИ рдореЗрдореЛрд░реА рдФрд░ рд╕рдВрджреЗрд╢ рдкрд╛рд╕рд┐рдВрдЧ ред

рд╕рд╛рдЭрд╛ рдореЗрдореЛрд░реА рд╕рд╛рдЭрд╛ рдХреА рдЧрдИ рдореЗрдореЛрд░реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ рдЬреЛ рдХрдИ рдереНрд░реЗрдбреНрд╕ рдбреЗрдЯрд╛ рдХрд╛ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рд╕реНрдореГрддрд┐ рддрдХ рдкрд╣реБрдБрдЪ рдХреЛ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдЖрдорддреМрд░ рдкрд░ рдХреБрдЫ рдкреНрд░рдХрд╛рд░ рдХреЗ рддрд╛рд▓реЛрдВ рджреНрд╡рд╛рд░рд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЛ рдирд┐рд╣рд┐рдд рд╕рдВрдЪрд╛рд░ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред
рд╕рдВрджреЗрд╢ рдкрд╛рд╕рд┐рдВрдЧ рдХрд╣рддрд╛ рд╣реИ рдХрд┐ рд╣рдо рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдмрд╛рддрдЪреАрдд рдХрд░реЗрдВрдЧреЗ, рдФрд░ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╣рдо рдЙрди рдЪреИрдирд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ рдЬрд┐рдирдореЗрдВ рд╣рдо рд╕рдВрджреЗрд╢ рднреЗрдЬреЗрдВрдЧреЗред CSP ( рд╕рдВрдЪрд╛рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдБ ) рдФрд░ рдЕрднрд┐рдиреЗрддрд╛ рдореЙрдбрд▓ рдЗрд╕реА рджреГрд╖реНрдЯрд┐рдХреЛрдг рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИрдВред

рд░реЛрдм рдкрд╛рдЗрдХ , рдЬреЛ рдЧреЛ рдХреЗ рд╕рдВрд╕реНрдерд╛рдкрдХ рдкрд┐рддрд╛ рд╣реИрдВ, рдХрд╛ рдХрд╣рдирд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рд╕рд╛рдЭрд╛ рдореЗрдореЛрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдФрд░ рд╕рдВрджреЗрд╢ рдкрд╛рд╕рд┐рдВрдЧ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЛ рдЫреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЖрдкрдХреЛ рдХрдо рдмрдЧ рдХреЗ рд╕рд╛рде рдХреЛрдб рдХреЛ рдЖрд╕рд╛рди, рдЕрдзрд┐рдХ рдХреБрд╢рд▓рддрд╛рдкреВрд░реНрд╡рдХ рдФрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд░реВрдк рд╕реЗ рд▓рд┐рдЦрдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ред рдЧреЛ рд╕реАрдПрд╕рдкреА рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЪреБрдирддрд╛ рд╣реИред рдЙрд╕реА рджреГрд╖реНрдЯрд┐рдХреЛрдг рдиреЗ рдПрд░реНрд▓рд╛рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреА рднрд╛рд╖рд╛ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЛ рдмрд╣реБрдд рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд┐рдпрд╛ред
рдкреНрд░рд╢реНрди: рдХреНрдпрд╛ рдпрд╣ рд╕рдЪ рд╣реИ рдХрд┐ рдЕрдЧрд░ рд╣рдо рдЧреЛ рд▓реЗ, рддреЛ рд╕рдм рдареАрдХ рд╣реЛ рдЬрд╛рдПрдЧрд╛?

рдореБрдЭреЗ рдПрдХ рдЕрдзреНрдпрдпрди рдореЗрдВ рдкрддрд╛ рдЪрд▓рд╛ рдЬрд┐рд╕рдореЗрдВ рдпрд╣ рдЧреЛрд▓реА рдорд┐рд▓реА рдереАред рдЯреЗрдмрд▓реЗрдЯ рдХрд╛рд░рдгреЛрдВ рдФрд░ рддрд╛рд▓реЛрдВ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдмрдЧреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред рдкрд╣рд▓рд╛ рдХреЙрд▓рдо рдЙрди рдЙрддреНрдкрд╛рджреЛрдВ рдХреЛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдЕрдзреНрдпрдпрди рдореЗрдВ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдпреЗ рдЧреЛ рдореЗрдВ рд▓рд┐рдЦреЗ рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рдЙрддреНрдкрд╛рдж рд╣реИрдВред рд╕рд╛рдЭрд╛ рдореЗрдореЛрд░реА рдХреЙрд▓рдо рд╕рд╛рдЭрд╛ рдореЗрдореЛрд░реА рдХреЗ рдЕрдиреБрдЪрд┐рдд рдЙрдкрдпреЛрдЧ рдХреЗ рдХрд╛рд░рдг рдЙрддреНрдкрдиреНрди рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдмрдЧреНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ, рдФрд░ рд╕рдВрджреЗрд╢ рдкрд╛рд╕рд┐рдВрдЧ рдХреЙрд▓рдо рдХреНрд░рдорд╢рдГ рд╕рдВрджреЗрд╢ рдкрд╛рд╕рд┐рдВрдЧ рдХреЗ рдХрд╛рд░рдг рдмрдЧ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред
рдЗрд╕ рдкреНрд▓реЗрдЯ рдХреА рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рдЯреЛрдЯрд▓ рд▓рд╛рдЗрди рд╣реИред рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рд╕рд╛рдЭрд╛ рдореЗрдореЛрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рд╕рдВрджреЗрд╢ рдкрд╛рд╕рд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдЕрдзрд┐рдХ рдмрдЧ рд╣реИрдВред рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕, рдбреЛрдХрд░ рдпрд╛ рдХреЙрд░реНрдб рд▓рд┐рдЦрдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧ рдХрд╛рдлреА рдЕрдиреБрднрд╡реА рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕рдВрджреЗрд╢ рдкрд╛рд╕рд┐рдВрдЧ рднреА рдЙрдиреНрд╣реЗрдВ рддреНрд░реБрдЯрд┐рдпреЛрдВ рд╕реЗ рдирд╣реАрдВ рдмрдЪрд╛рддрд╛ рд╣реИ, рдФрд░ рдпреЗ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рд╕рд╛рдЭрд╛ рдореЗрдореЛрд░реА рд╕реЗ рдХрдо рдирд╣реАрдВ рд╣реИрдВред
рддреЛ рдмрд╕ рдЬрд╛рдУ рдФрд░ рддреНрд░реБрдЯрд┐ рдореБрдХреНрдд рдХреЛрдб рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрдВрдЧреЗред
рд╕рд╛рдордВрдЬрд╕реНрдп рдФрд░ рд╕рдорд╛рдирддрд╛
рдЬрдм рд╣рдо рдмрд╣реБ-рдереНрд░реЗрдбреЗрдб рд╡рд┐рдХрд╛рд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдореЗрдВ рдХреЙрдиреНрд╕реЗрдкреНрдЯ рдФрд░ рдкреИрд░реЗрд▓рд▓рд┐рдЬрд╝реНрдо рдЬреИрд╕реА рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЛ рдкреЗрд╢ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЧреЛ рдХреА рджреБрдирд┐рдпрд╛ рдореЗрдВ, рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╣реИ "рдХрдВрдЬреЗрд░рд┐рдмрд┐рд▓рд┐рдЯреА рд╕рдорд╛рдВрддрд░рд╡рд╛рдж рдирд╣реАрдВ рд╣реИ ред " рд▓рдмреНрдмреЛрд▓реБрдЖрдм рдпрд╣ рд╣реИ рдХрд┐ Concurrency рдбрд┐рдЬрд╛рдЗрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ, рдЕрд░реНрдерд╛рдд, рд╣рдо рдЕрдкрдиреЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдХреИрд╕реЗ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд░рддреЗ рд╣реИрдВред рд╕рдорд╛рдирд╛рдВрддрд░рд╡рд╛рдж рд╣рдорд╛рд░реЗ рдХреЛрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИред

рдпрджрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рдХрдИ рдзрд╛рдЧреЗ рд╣реИрдВ рдЬреЛ рдПрдХ рд╕рд╛рде рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВред рд╕рдорд╛рдирддрд╛ рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзреА рдбрд┐рдЬрд╛рдЗрди рдХреЗ рдмрд┐рдирд╛ рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рд╕рдорд╛рдирд╛рдВрддрд░ рдХрд░рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдЬрдмрдХрд┐ рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзрд╛рддреНрдордХрддрд╛ рдХреЛ рд╕рдорд╛рдирддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдЬреЛ рдХрдИ рдХреЛрд░ рдкрд░ рдЪрд▓ рд╕рдХрддрд╛ рд╣реИ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдПрдХ рд╣реА рдХреЛрд░ рдкрд░ рдЪрд▓ рд╕рдХрддрд╛ рд╣реИред
рдЧреЛ рдПрдХ рдРрд╕реА рднрд╛рд╖рд╛ рд╣реИ рдЬреЛ рд╣рдореЗрдВ рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзреА рдХрд╛рд░реНрдпрдХреНрд░рдо рд▓рд┐рдЦрдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддреА рд╣реИ, рдбрд┐рдЬрд╛рдЗрди рдмрдирд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддреА рд╣реИред рдпрд╣ рдЖрдкрдХреЛ рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рдЪреАрдЬреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рдХрдо рд╕реЛрдЪрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
рдЖрдорджрд╛рд▓ рдХрд╛ рдирд┐рдпрдо
рд╣рдо рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЛрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд╣рдо рдЗрд╕рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдХреЛрдб рд▓рд┐рдЦрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рд╕рд╡рд╛рд▓ рдЙрдарддрд╛ рд╣реИ: рдЙрддреНрдкрд╛рджрдХрддрд╛ рдореЗрдВ рдХрд┐рд╕ рддрд░рд╣ рдХреА рд╡реГрджреНрдзрд┐ рд╣рдореЗрдВ рдХреЛрд░ рдХреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╡реГрджреНрдзрд┐ рдХреЗ рд╕рд╛рде рдорд┐рд▓рддреА рд╣реИред рддреЛ, рд╣рдо рдЬреЛ рддреНрд╡рд░рдг рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╡рд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЕрдореНрджрд▓ рдХреЗ рдХрд╛рдиреВрди рджреНрд╡рд╛рд░рд╛ рд╕реАрдорд┐рдд рд╣реИ ред

рддреНрд╡рд░рдг рдХреНрдпрд╛ рд╣реИ? рддреНрд╡рд░рдг рд╡рд╣ рд╕рдордп рд╣реИ рдЬрдм рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЙрд╕ рд╕рдордп рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдП рдЧрдП рдПрдХрд▓ рдкреНрд░реЛрд╕реЗрд╕рд░ рдкрд░ рдЪрд▓рддрд╛ рд╣реИ рдЬреЛ рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдкреА рдкреНрд░реЛрд╕реЗрд╕рд░ рдкрд░ рдЪрд▓рддрд╛ рд╣реИред рдЕрдХреНрд╖рд░ F ( Fraction ) рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдЙрд╕ рднрд╛рдЧ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдФрд░ рдпрд╣рд╛рдВ рд╕реВрддреНрд░ рдореЗрдВ рддрд▓реНрд▓реАрди рдХрд░рдирд╛ рднреА рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ, рдореБрдЦреНрдп рдмрд╛рдд рдпрд╣ рдзреНрдпрд╛рди рд░рдЦрдирд╛ рд╣реИ рдХрд┐ рдирд╛рднрд┐рдХ рдХреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╡реГрджреНрдзрд┐ рдХреЗ рд╕рд╛рде рд╣рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдиреЗ рд╡рд╛рд▓рд╛ рдЕрдзрд┐рдХрддрдо рддреНрд╡рд░рдг рдПрдл рдкрд░ рджреГрдврд╝рддрд╛ рд╕реЗ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ ред рдЗрд╕ рд░рд┐рд╢реНрддреЗ рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧреНрд░рд╛рдл рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВред

рднрд▓реЗ рд╣реА рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рдХреЗрд╡рд▓ 5% рд╣реИ, рдЬреЛ рдЕрдзрд┐рдХрддрдо рддреНрд╡рд░рдг рд╣рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ рд╡рд╣ рдХреЛрд░ рдХреА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╡реГрджреНрдзрд┐ рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдХрдо рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдЖрдк рдЕрдиреБрдорд╛рди рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдПрдл рдХреЛ рдмрдврд╝рд╛рдиреЗ рд╡рд╛рд▓реЗ рдХреМрди рд╕реЗ рд╣рд┐рд╕реНрд╕реЗ рд╣реИрдВ ред

рд╕реАрдкреАрдпреВ рдмрд╛рдЙрдВрдб рдмрдирд╛рдо рдЖрдИ / рдУ рдмрд╛рдЙрдВрдб
рдпрд╣ рд╣рдореЗрд╢рд╛ рдорд▓реНрдЯреАрдереНрд░реЗрдбрд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рд╣реИред рдкрд╣рд▓реЗ рдЖрдкрдХреЛ рд▓реЛрдб рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЛ рджреЗрдЦрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред рджреЛ рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓реЛрдб рд╣реИрдВ: рд╕реАрдкреАрдпреВ рдмрд╛рдЙрдВрдб рдФрд░ рдЖрдИ / рдУ рдмрд╛рдЙрдВрдб ред рдЕрдВрддрд░ рдпрд╣ рд╣реИ рдХрд┐ рд╕реАрдкреАрдпреВ рдмрд╛рдЙрдВрдб рдХреЗ рд╕рд╛рде рд╣рдо рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рд╕реЗ рд╕реАрдорд┐рдд рд╣реИрдВ, рдФрд░ рдЖрдИ / рдУ рдмрд╛рдЙрдВрдб рд╕реЗ рд╣рдо рдЕрдкрдиреЗ рдЖрдИ / рдПрд╕ рд╕рдмрд╕рд┐рд╕реНрдЯрдо рдХреА рдЧрддрд┐ рд╕реЗ рд╕реАрдорд┐рдд рд╣реИрдВред рдЧрддрд┐ рднреА рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рдЙрддреНрддрд░ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреАрдХреНрд╖рд╛ рд╕рдордп рд╣реИред рдСрдирд▓рд╛рдЗрди рдЬрд╛рдирд╛ - рдЙрддреНрддрд░ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдирд╛, рдбрд┐рд╕реНрдХ рдкрд░ рдЬрд╛рдирд╛ - рдлрд┐рд░ рд╕реЗ рдЙрддреНрддрд░ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдирд╛ред рдХреНрдпрд╛ рдЕрдВрддрд░ рд╣реИ, рдХрд┐рддрдиреЗ рдХреЛрд░ рд╣реИрдВ, рдЕрдЧрд░ рдЬреНрдпрд╛рджрд╛рддрд░ рд╕рдордп рд╣рдо рдПрдХ рдЙрддреНрддрд░ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ?

рдЗрд╕рд▓рд┐рдП, рдПрдХ рдХреЛрд░ рдпрд╛ рдПрдХ рд╣рдЬрд╛рд░, рд╣рдореЗрдВ I / O рдмрд╛рдЙрдВрдб рд▓реЛрдб рдХреЗ рддрд╣рдд рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╡реГрджреНрдзрд┐ рдирд╣реАрдВ рдорд┐рд▓реАред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕реАрдкреАрдпреВ рдмрд╛рдЙрдВрдб рд▓реЛрдб рд╣реИ, рддреЛ рд╣рдорд╛рд░реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рд╕рдорд╛рдирд╛рдВрддрд░ рдХрд░рддреЗ рд╕рдордп рддреНрд╡рд░рдг рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдореМрдХрд╛ рд╣реИред
рд╣рд╛рд▓рд╛рдВрдХрд┐ рдРрд╕реА рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпрд╛рдВ рд╣реИрдВ рдЬрдм рд╕реНрдкрд╖реНрдЯ рд╕реАрдкреАрдпреВ рдмрд╛рдЙрдВрдб рд▓реЛрдб рд╣реЛрддрд╛ рд╣реИ, рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ I / O рдмрд╛рдЙрдВрдб рдореЗрдВ рдкрддрд┐рдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдо рдПрдХ рдмрдбрд╝реЗ рд╕рд░рдгреА рдХреЗ рд╕рднреА рддрддреНрд╡реЛрдВ рдХреЛ рд▓реЗрдирд╛ рдФрд░ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдХреНрдпрд╛ рдХрд░реЗрдВрдЧреЗ? рд╣рдо рдПрдХ рдЪрдХреНрд░ рд▓рд┐рдЦреЗрдВрдЧреЗ, рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред рдлрд┐рд░ рд╣рдо рд╕реЛрдЪрддреЗ рд╣реИрдВ: тАЬрддреЛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд▓рд╛рд╢реЛрдВ рдХрд╛ рдПрдХ рд╕рдореВрд╣ рд╣реИред рдЪрд▓реЛ рдмрд╕ рдЗрд╕реЗ рд▓реЗрддреЗ рд╣реИрдВ, рд╕рд░рдгреА рдХреЛ рд╡рд┐рдЦрдВрдбреВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдкреВрд░реА рдЪреАрдЬрд╝ рдХреЛ рд╕рдорд╛рдирд╛рдВрддрд░ рдХрд░рддреЗ рд╣реИрдВред тАЭ рдЗрд╕рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдХреНрдпрд╛ рд╣реЛрдЧрд╛?

рдкрд░рд┐рдгрд╛рдо рдПрдХ рдРрд╕реА рд╕реНрдерд┐рддрд┐ рд╣реИ рдЬрд╣рд╛рдВ рд╣рдорд╛рд░реЗ рдкреНрд░реЛрд╕реЗрд╕рд░ рдореЗрдореЛрд░реА рд╕реЗ рдЖрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдмрдВрдзрди рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рддреЗрдЬреА рд╕реЗ рдбреЗрдЯрд╛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рдордп рд╣рдо рдореЗрдореЛрд░реА рд╕реЗ рдбреЗрдЯрд╛ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВрдЧреЗ, рдФрд░ рд▓реЛрдб, рдЬреЛ рд╕реАрдкреАрдпреВ рдмрд╛рдЙрдВрдб рдкреНрд░рддреАрдд рд╣реЛ рд░рд╣рд╛ рдерд╛, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрдИ / рдУ рдмрд╛рдЙрдВрдб рдирд┐рдХрд▓рд╛ред
рдЧрд▓рдд рдмрдВрдЯрд╡рд╛рд░рд╛
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЭреВрдареА рдмрдВрдЯрд╡рд╛рд░реЗ рдЬреИрд╕реА рдХрд╣рд╛рдиреА рд╣реИред рдЭреВрдареА рд╕рд╛рдЭрд╛рдХрд░рдг рдПрдХ рдРрд╕реА рд╕реНрдерд┐рддрд┐ рд╣реИ рдЬрдм рдЧреБрдард▓реА рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддреА рд╣реИред рдкрд╣рд▓рд╛ рдХреЛрд░ рд╣реИ, рджреВрд╕рд░рд╛ рдХреЛрд░ рд╣реИ, рдФрд░ рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХрд╛ рдЕрдкрдирд╛ рдПрд▓ 1 рдХреИрд╢ рд╣реИ ред L1 рдХреИрд╢ 64 рдмрд╛рдЗрдЯреНрд╕ рдХреА рд▓рд╛рдЗрдиреЛрдВ ( рдХреИрд╢ рд▓рд╛рдЗрди ) рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рд╣реИред рдЬрдм рд╣рдо рдореЗрдореЛрд░реА рд╕реЗ рдХреБрдЫ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдореЗрдВ рд╣рдореЗрд╢рд╛ 64 рдмрд╛рдЗрдЯреНрд╕ рд╕реЗ рдХрдо рдирд╣реАрдВ рдорд┐рд▓рддрд╛ рд╣реИред рдЗрд╕ рдбреЗрдЯрд╛ рдХреЛ рдмрджрд▓рдХрд░, рд╣рдо рд╕рднреА рдХреЛрд░ рдХреЗ рдХреИрд╢ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рджреЗрддреЗ рд╣реИрдВред

рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ рджреЛ рдХреЛрд░ рдбреЗрдЯрд╛ рдХреЛ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рдмрд╣реБрдд рдХрд░реАрдм ( 64 рдмрд╛рдЗрдЯреНрд╕ рд╕реЗ рдХрдо рдХреА рджреВрд░реА рдкрд░ ) рдмрджрд▓рддреЗ рд╣реИрдВ, рддреЛ рд╡реЗ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддреЗ рд╣реИрдВ, рдХреИрд╢ рдХреЛ рдЕрдорд╛рдиреНрдп рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрджрд┐ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреНрд░рдорд┐рдХ рд░реВрдк рд╕реЗ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдпрд╣ рдХрдИ рдХреЛрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рддреЗрдЬреА рд╕реЗ рдХрд╛рдо рдХрд░реЗрдЧрд╛ рдЬреЛ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░рддреЗ рд╣реИрдВред рдЕрдзрд┐рдХ рдХреЛрд░, рдкреНрд░рджрд░реНрд╢рди рдХрдо рд╣реИред
рд╢реЗрдбреНрдпреВрд▓рд░
рд╣рдо рдпреЛрдЬрдирд╛рдХрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдореВрд░реНрдд рдХреЗ рдЕрдЧрд▓реЗ рд╕реНрддрд░ рддрдХ рдмрдврд╝реЗрдВрдЧреЗред
рдЬрдм рдХрд╛рдо рдПрдХ рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзреА рдХреЛрдб рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рд╢реЗрдбреНрдпреВрд▓рд░ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВред рдЧреЛ рдореЗрдВ рдПрдХ рддрдерд╛рдХрдерд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рдЕрдВрддрд░рд┐рдХреНрд╖ рдЕрдиреБрд╕реВрдЪрдХ рд╣реИ рдЬреЛ рдЧреЛрд░реЛрдЗрдЯрд┐рди рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ ред рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдЕрдкрдирд╛ рд╢реЗрдбреНрдпреВрд▓рд░ рднреА рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдереНрд░реЗрдб рд╕реЗ рд╕рдВрдЪрд╛рд▓рд┐рдд рд╣реЛрддрд╛ рд╣реИ ред рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдкреНрд░реЛрд╕реЗрд╕рд░ рднреА рдЗрддрдирд╛ рд╕рд░рд▓ рдирд╣реАрдВ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдзреБрдирд┐рдХ рдкреНрд░реЛрд╕реЗрд╕рд░ рдореЗрдВ рд╢рд╛рдЦрд╛ рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдФрд░ рджреБрдирд┐рдпрд╛ рдХреА рд░реИрдЦрд┐рдХрддрд╛ рдХреА рд╣рдорд╛рд░реА рд╕реБрдВрджрд░ рддрд╕реНрд╡реАрд░ рдХреЛ рдЦрд░рд╛рдм рдХрд░рдиреЗ рдХреЗ рдЕрдиреНрдп рддрд░реАрдХреЗ рд╣реИрдВред

рд╢реЗрдбреНрдпреВрд▓рд░реНрд╕ рдХреЛ рдорд▓реНрдЯреАрдЯрд╛рд╕реНрдХрд┐рдВрдЧ рдХреЗ рдкреНрд░рдХрд╛рд░ рд╕реЗ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╕рд╣рдХрд╛рд░реА рдорд▓реНрдЯреАрдЯрд╛рд╕реНрдХрд┐рдВрдЧ рдФрд░ рдкреНрд░реАрдореЗрдкреНрдЯрд┐рд╡ рдорд▓реНрдЯреАрдЯрд╛рд╕реНрдХрд┐рдВрдЧ рд╣реИ ред рд╕рд╣рдХрд╛рд░реА рдорд▓реНрдЯреАрдЯрд╛рд╕реНрдХрд┐рдВрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдирд┐рд╖реНрдкрд╛рджрди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реНрд╡рдпрдВ рддрдп рдХрд░рддреА рд╣реИ рдХрд┐ рдЙрд╕реЗ рдХрд┐рд╕реА рдЕрдиреНрдп рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдпрд╛ рднреАрдбрд╝ рдорд▓реНрдЯреАрдЯрд╛рд╕реНрдХрд┐рдВрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ , рдПрдХ рдмрд╛рд╣рд░реА рдШрдЯрдХ - рдЕрдиреБрд╕реВрдЪрдХ рд╣реИ, рдЬреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдХрд┐рддрдирд╛ рд╕рдВрд╕рд╛рдзрди рдЖрд╡рдВрдЯрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рд╕рд╣рдХрд╛рд░реА рдорд▓реНрдЯреАрдЯрд╛рд╕реНрдХрд┐рдВрдЧ рдПрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдкреВрд░реЗ рд╕реАрдкреАрдпреВ рд╕рдВрд╕рд╛рдзрди рдХреЛ "рдПрдХрд╛рдзрд┐рдХрд╛рд░" рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдкреНрд░реАрдореЗрдкреНрдЯрд┐рд╡ рдорд▓реНрдЯреАрдЯрд╛рд╕реНрдХрд┐рдВрдЧ рдореЗрдВ, рдРрд╕рд╛ рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рдирд┐рдпрдВрддреНрд░рд┐рдд рд╢рд░реАрд░ рд╣реИред рд▓реЗрдХрд┐рди рд╕рд╣рдХрд╛рд░реА рдорд▓реНрдЯреАрдЯрд╛рд╕реНрдХрд┐рдВрдЧ рдХреЗ рд╕рд╛рде, рд╕рдВрджрд░реНрдн рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рдЕрдзрд┐рдХ рдХреБрд╢рд▓ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╛рдирддреА рд╣реИ рдХрд┐ рдХрд┐рд╕реА рдЕрдиреНрдп рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдирд┐рдпрдВрддреНрд░рдг рджреЗрдирд╛ рдХрд┐рд╕ рдмрд┐рдВрджреБ рдкрд░ рдмреЗрд╣рддрд░ рд╣реИред рдкреНрд░реАрдореЗрдкреНрдЯрд┐рд╡ рдорд▓реНрдЯреАрдЯрд╛рд╕реНрдХрд┐рдВрдЧ рдореЗрдВ, рд╢реЗрдбреНрдпреВрд▓рд░ рдХрд┐рд╕реА рднреА рд╕рдордп рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд░реЛрдХ рд╕рдХрддрд╛ рд╣реИ - рдпрд╣ рдмрд╣реБрдд рдХреБрд╢рд▓ рдирд╣реАрдВ рд╣реИред рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ, рдкреНрд░реАрдореЗрдкреНрдЯрд┐рд╡ рдорд▓реНрдЯреАрдЯрд╛рд╕реНрдХрд┐рдВрдЧ рдореЗрдВ, рд╣рдо рдмрд╛рд╣рд░реА рдЕрдиреБрд╕реВрдЪрдХ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реА рд╕рдВрд╕рд╛рдзрди рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдкреНрд░реАрдореЗрдкреНрдЯрд┐рд╡ рдорд▓реНрдЯреАрдЯрд╛рд╕реНрдХрд┐рдВрдЧ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рд╢реЗрдбреНрдпреВрд▓рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рд╢рд░реНрддреЛрдВ рдХреА рдЧрд╛рд░рдВрдЯреА рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдУрдПрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛?

рдпрджрд┐ рд╣рдо рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдкрдврд╝рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рд╕реАрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдЧреЛ рдореЗрдВ рдЕрдиреБрд╕реВрдЪрдХ рдкреВрд░реНрд╡рд╕реВрдЪрдХ рд╣реИред рд▓реЗрдХрд┐рди, рдЬрдм рд╣рдо рд╕рдордЭрдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдЧреЛ рдХреЗ рдкрд╛рд╕ рдмрд╛рд╣рд░реА рдШрдЯрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдЕрдиреБрд╕реВрдЪрдХ рдирд╣реАрдВ рд╣реИред рдЧреЛ рдореЗрдВ, рдХрдВрдкрд╛рдЗрд▓рд░ рд╕рдВрджрд░реНрдн рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рдкреЙрдЗрдВрдЯ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИред рдФрд░ рдпрджреНрдпрдкрд┐ рд╣рдо, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ, рд╕рдВрджрд░реНрдн рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдмрд╛рд╣рд░реА рдШрдЯрдХ рдкрд░ рд╕реНрд╡рд┐рдЪрди рдирд┐рдпрдВрддреНрд░рдг рдирд╣реАрдВ рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдЧреЛ рдПрдХ рдЧреЛрд░реЛрдЗрди рдХреЛ рджреВрд╕рд░реЗ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдореЗрдВ рдмрд╣реБрдд рдкреНрд░рднрд╛рд╡реА рд╣реИред рд▓реЗрдХрд┐рди рдРрд╕реЗ "рдпреЛрдЬрдирд╛рдХрд╛рд░" рдХреЗ рдХрд╛рдо рдХреА рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреА рдЧрд▓рддрдлрд╣рдореА рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдЬрдиреНрдо рджреЗ рд╕рдХрддреА рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рдХреЛрдб рдЖрдЙрдЯрдкреБрдЯ рдХреНрдпрд╛ рд╣реЛрдЧрд╛?

рдРрд╕рд╛ рдХреЛрдб рдЬрдо рдЬрд╛рдПрдЧрд╛ред
рдХреНрдпреЛрдВ? рдХреНрдпреЛрдВрдХрд┐ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, GOMAXPROCS
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ GOMAXPROCS
, рд╣рдордиреЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдХреЗрд╡рд▓ рдПрдХ рдХреЛрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдпрд╛ред рдЙрд╕рдХреЗ рдмрд╛рдж, рдЧреЛрд░реЛрдЗрди рдХреЛ рдХрддрд╛рд░ рдореЗрдВ рд░рдЦрд╛ рдЧрдпрд╛, рдЬрд┐рд╕рдХреЗ рдЕрдВрджрд░ рдПрдХ рдЕрдВрддрд╣реАрди рдЪрдХреНрд░ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдлрд┐рд░ рд╣рдо 500 рдПрдордПрд╕ рдФрд░ рдкреНрд░рд┐рдВрдЯ x
рдЗрдВрддрдЬрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред рд╕рдордп рдХреЗ рдмрд╛рджред time.Sleep
рдЧреЛрд░реЛрдЗрди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╢реБрд░реВ рд╣реЛ рдЬрд╛рдПрдЧрд╛, рд▓реЗрдХрд┐рди рдЕрдирдВрдд рд▓реВрдк рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рдХрд╛ рдХреЛрдИ рд░рд╛рд╕реНрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рд╕рдВрдХрд▓рдХ рд╕рдВрджрд░реНрдн рд╕реНрд╡рд┐рдЪ рдмрд┐рдВрджреБ рдирд╣реАрдВ рдбрд╛рд▓реЗрдЧрд╛ред рдХрд╛рд░реНрдпрдХреНрд░рдо рдЬрдорд╛ рджреЗрддрд╛ рд╣реИред
рдФрд░ рдЕрдЧрд░ рд╣рдо runtime.Gosched()
рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред рд▓реВрдк рдХреЗ рдЕрдВрджрд░ рд░рдЦрд╛ рд╣реБрдЖ runtime.Gosched()
, рддреЛ рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реЛ рдЬрд╛рдПрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕рдВрдХреЗрдд рджреЗрдВрдЧреЗ рдХрд┐ рд╣рдо рд╕рдВрджрд░реНрдн рдХреЛ рд╕реНрд╡рд┐рдЪ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
рдРрд╕реА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рднреА рдЬрд╛рдирдирд╛ рдФрд░ рдпрд╛рдж рд░рдЦрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред
рд╣рдордиреЗ рд╕рдВрджрд░реНрдн рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХреА рдереА, рд▓реЗрдХрд┐рди рдЧреЛ рдЖрдорддреМрд░ рдкрд░ рд╕реНрд╡рд┐рдЪ рдкреЙрдЗрдВрдЯ рдХрд╣рд╛рдВ рдбрд╛рд▓рддреЗ рд╣реИрдВ?

runtime.morestack()
рдФрд░ runtime.newstack()
рдЖрдорддреМрд░ рдкрд░ рдЙрд╕ рд╕рдордп рдбрд╛рд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рдлрд╝рдВрдХреНрд╢рди рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред runtime.Goshed()
рд╣рдо рдЦреБрдж рдХреЛ рдЖрдкреВрд░реНрддрд┐ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдФрд░ рд╣рд╛рдВ, рд▓реЙрдХреНрд╕, рдиреЗрдЯрд╡рд░реНрдХ рд╣рд╛рдЗрдХ рдФрд░ рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓ рдХреЗ рджреМрд░рд╛рди рд╕рдВрджрд░реНрдн рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рд╣реЛрддрд╛ рд╣реИред рдЖрдк рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ Kirill Lashkevich рдХреА рдПрдХ рд░рд┐рдкреЛрд░реНрдЯ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛, рдореИрдВ рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВред
рдХреЛрдб рдХреЗ рдЖрдЧреЗ рдЪрд▓рддреЗ рд╣реИрдВред рд╣рдо рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рджреЗрдЦреЗрдВрдЧреЗред
рджреМрдбрд╝ рдХреА рд╕реНрдерд┐рддрд┐
рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рдЧрд▓рддрд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣рдо Race Condition
ред рд▓рдмреНрдмреЛрд▓реБрдЖрдм рдпрд╣ рд╣реИ рдХрд┐ рдЬрдм рд╣рдо рдХрд░рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╡реЗрддрди рд╡реГрджреНрдзрд┐, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣рдо рдПрдХ рдСрдкрд░реЗрд╢рди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХрдИ: рдкреНрд░реЛрд╕реЗрд╕рд░ рдореЗрдореЛрд░реА рд╕реЗ рдбреЗрдЯрд╛ рдХреЛ рдкрдврд╝рддрд╛ рд╣реИ, рд░рдЬрд┐рд╕реНрдЯрд░ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдореЗрдореЛрд░реА рдХреЛ рдбреЗрдЯрд╛ рд▓рд┐рдЦрддрд╛ рд╣реИред

рдЗрди рддреАрдиреЛрдВ рдСрдкрд░реЗрд╢рдиреЛрдВ рдХреЛ рдкрд░рдорд╛рдгреБ рд░реВрдк рд╕реЗ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдХрд┐рд╕реА рднреА рд╕рдордп рдЕрдиреБрд╕реВрдЪрдХ, рдЗрдирдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рднреА рдСрдкрд░реЗрд╢рди рдкрд░, рд╣рдорд╛рд░реЗ рдкреНрд░рд╡рд╛рд╣ рдХреЛ рд▓реЗ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рднреАрдбрд╝ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдХрд╛рд░реНрд░рд╡рд╛рдИ рд╕рдорд╛рдкреНрдд рдирд╣реАрдВ рд╣реБрдИ рд╣реИ, рдФрд░ рдЗрд╕ рд╡рдЬрд╣ рд╕реЗ рд╣рдо рдХреАрдбрд╝реЗ рдкрдХрдбрд╝рддреЗ рд╣реИрдВред
рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рдХреЛрдб рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ ( рд╡реЗрддрди рд╡реГрджреНрдзрд┐ рддреБрд░рдВрдд рдХрдИ рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рд╡рд┐рдШрдЯрд┐рдд рд╣реЛ рдЬрд╛рддреА рд╣реИ )ред

рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдЕрдиреБрд╕реВрдЪрдХ рдкрд╣рд▓реЗ рдереНрд░реЗрдб рдХреЛ рдкреВрд░реНрд╡ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рд╕реНрдерд┐рддрд┐ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рджреВрд╕рд░рд╛ рдзрд╛рдЧрд╛ред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рджреЛрдиреЛрдВ рдкреНрд░рд╡рд╛рд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЦрдВрдб рдореЗрдВ рдЧрд┐рд░ рдЬрд╛рдПрдВрдЧреЗ, рдФрд░ рдЗрд╕рд▓рд┐рдП рдпрд╣ "рдорд╣рддреНрд╡рдкреВрд░реНрдг" рд╣реИ - рджреЛрдиреЛрдВ рдкреНрд░рд╡рд╛рд╣ рдПрдХ рд╕рд╛рде рд╡рд╣рд╛рдВ рджрд░реНрдЬ рдирд╣реАрдВ рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред
рд╣рдо sync
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓реЙрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдорд╛рдирдХ sync
рдкреИрдХреЗрдЬ рд╕реЗ sync.Mutex
ред рдкреНрд░рд╡реЗрд╢ рдЕрд╡рд░реБрджреНрдз рдХрд░рдиреЗ рд╕реЗ рд╣рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕рдВрдХреЗрдд рдорд┐рд▓рддрд╛ рд╣реИ рдХрд┐ рдХреЛрдб рдХреЛ рдПрдХ рд╕рдордп рдореЗрдВ рдПрдХ рдереНрд░реЗрдб рджреНрд╡рд╛рд░рд╛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕ рдХреЛрдб рдХреЗ рд╕рд╛рде, рд╣рдореЗрдВ рд╡рд╣ рдорд┐рд▓рддрд╛ рд╣реИ рдЬреЛ рд╣рдореЗрдВ рдЪрд╛рд╣рд┐рдПред

рддрд╛рд▓реЗ рдХрд╛рдлреА рдорд╣рдВрдЧреЗ рдСрдкрд░реЗрд╢рди рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕реНрддрд░ рдкрд░ рдкрд░рдорд╛рдгреБ рд╕рдВрдЪрд╛рд▓рди рд╣реЛрддреЗ рд╣реИрдВред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╡реГрджреНрдзрд┐ рдХреЛ рдкрд░рдорд╛рдгреБ рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдХреЗ рдкрд░рдорд╛рдгреБ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред atomic
рдкреИрдХреЗрдЬ рд╕реЗ atomic.AddInt64
рдСрдкрд░реЗрд╢рдиред

рдпрджрд┐ рд╣рдо рдкрд░рдорд╛рдгреБ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдореЗрдВ рди рдХреЗрд╡рд▓ рдкрд░рдорд╛рдгреБ рд▓рд┐рдЦрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ, рдмрд▓реНрдХрд┐ рдкрд░рдорд╛рдгреБ рднреА рдкрдврд╝реЗрдВред рдпрджрд┐ рд╣рдо рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕рдорд╕реНрдпрд╛рдПрдВ рдкреИрджрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИрдВред
рдЕрдиреБрдХреВрд▓рди - рдХреНрдпрд╛ рдЧрд▓рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЧрд▓рдд?
рддрд╛рд▓реЗ рдЕрдЪреНрдЫреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдорд╣рдВрдЧреЗ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдПрдЯрдорд┐рдХреНрд╕ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд╛ рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╕рд╕реНрддреЗ рд╣реИрдВред
рдЗрд╕рд▓рд┐рдП рд╣рдордиреЗ рд╕реАрдЦрд╛ рдХрд┐ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬрд╝реЗрд╢рди рдкреНрд░рд╛рдЗрдореЗрдЯрд┐рд╡реНрд╕ рдУрд╡рд░рд╣реЗрдб рдХрд╛ рдкрд░рд┐рдЪрдп рджреЗрддреЗ рд╣реИрдВ, рдФрд░ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝реЗрд╢рди рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рд╣реИ - рд╣рдо рдорд▓реНрдЯреАрдереНрд░реЗрдбрд┐рдВрдЧ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдлреНрд▓реИрдЧ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВрдЧреЗ, рдФрд░ рдлрд┐рд░ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬрд╝реЗрд╢рди рдкреНрд░рд╛рдЗрдореЗрдЯрд┐рд╡ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбрдмрд▓-рдЪреЗрдХ рдХрд░реЗрдВрдЧреЗред рд╕рдм рдХреБрдЫ рдареАрдХ рд▓рдЧ рд░рд╣рд╛ рд╣реИ рдФрд░ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИ, рд╕рд┐рд╡рд╛рдп рдЗрд╕рдХреЗ рдХрд┐ рдХрдВрдкрд╛рдЗрд▓рд░ рд╣рдорд╛рд░реЗ рдХреЛрдб рдХреЛ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИред рд╡рд╣ рдХреНрдпрд╛ рдХрд░ рд░рд╣рд╛ рд╣реИ? рд╡рд╣ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЛ рд╕реНрд╡реИрдк рдХрд░рддрд╛ рд╣реИ, рдФрд░ рд╣рдореЗрдВ рдЧреИрд░-рд╡реИрдз рд╡реНрдпрд╡рд╣рд╛рд░ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдорд╛рд░рд╛ done
рдЧрдпрд╛ рд╡реЗрд░рд┐рдПрдмрд▓ "
" рдЕрд╕рд╛рдЗрди рдХрд┐рдП рдЬрд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ true
рд╣реЛ рдЬрд╛рддрд╛ true
ред
рдРрд╕реА рдЕрдиреБрдХреВрд▓рди рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рди рдХрд░реЗрдВ - рдЙрдирдХреА рд╡рдЬрд╣ рд╕реЗ рдЖрдкрдХреЛ рдмрд╣реБрдд рд╕рд╛рд░реА рд╕рдорд╕реНрдпрд╛рдПрдВ рдорд┐рд▓реЗрдВрдЧреАред рдореИрдВ рдЖрдкрдХреЛ рдж рдЧреЛ рдореЗрдореЛрд░реА рдореЙрдбрд▓ рдХреЗ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдФрд░ рджрд┐рдорд┐рддреНрд░реА рд╡реНрдпреБрдХреЛрд╡рд╛ ( @dvyukov ) рд╕реМрдореНрдп рдбреЗрдЯрд╛ рджреМрдбрд╝ рдХреЗ рдПрдХ рд▓реЗрдЦ рдХреЛ рдкрдврд╝рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ : рдХреНрдпрд╛ рдЧрд▓рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ? рдмреЗрд╣рддрд░ рдореБрджреНрджреЛрдВ рдХреЛ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдПред
рдпрджрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рддрд╛рд▓реЗ рдкрд░ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ - рд▓реЙрдХ-рдлреНрд░реА рдХреЛрдб рд▓рд┐рдЦреЗрдВ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдореЗрдореЛрд░реА рдореЗрдВ рдЧреИрд░-рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
рдЧрддрд┐рд░реЛрдз
рдЕрдЧрд▓реА рд╕рдорд╕реНрдпрд╛ рдЬрд┐рд╕рдХрд╛ рд╣рдо рд╕рд╛рдордирд╛ рдХрд░реЗрдВрдЧреЗ рд╡рд╣ рд╣реИ рдбреЗрдбрд▓реЙрдХред рдРрд╕рд╛ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣рд╛рдВ рд╕рдм рдХреБрдЫ рдХрд╛рдлреА рддреБрдЪреНрдЫ рд╣реИред рджреЛ рд╕рдВрд╕рд╛рдзрди рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рджреЛ Mutex
ред рдкрд╣рд▓реЗ рдзрд╛рдЧреЗ рдореЗрдВ, рд╣рдо рдкрд╣рд▓реЗ Mutex
рдкрд░ рдХрдмреНрдЬрд╛ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рджреВрд╕рд░реЗ рдзрд╛рдЧреЗ рдореЗрдВ рд╣рдо рдкрд╣рд▓реЗ Mutex
рдкрд░ рдХрдмреНрдЬрд╛ рдХрд░рддреЗ рд╣реИрдВред рдЖрдЧреЗ рд╣рдо рджреВрд╕рд░реЗ Mutex
рдХреЛ рдкрд╣рд▓реЗ рдзрд╛рдЧреЗ рдореЗрдВ рд▓реЗрдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗ, рд▓реЗрдХрд┐рди рд╣рдо рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░ рдкрд╛рдПрдВрдЧреЗ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдмреНрд▓реЙрдХ рд╣реИред рджреВрд╕рд░реЗ рдзрд╛рдЧреЗ рдореЗрдВ, рд╣рдо рдХреНрд░рдорд╢рдГ рдкрд╣рд▓рд╛ Mutex
рдФрд░ рдмреНрд▓реЙрдХ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВрдЧреЗред рд╡рд╣рд╛рдБ рд╡рд╣ рд╣реИ, рдбреЗрдбрд▓реЙрдХред

рдЗрди рджреЛрдиреЛрдВ рдереНрд░реЗрдбреНрд╕ рдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рдЖрдЧреЗ рдирд╣реАрдВ рдмрдврд╝ рдкрд╛рдПрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпреЗ рджреЛрдиреЛрдВ рд╕рдВрд╕рд╛рдзрди рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░реЗрдВрдЧреЗред рдпрд╣ рдХреИрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ? рд╣рдо рддрд╛рд▓реЗ рдХреЛ рд╕реНрд╡реИрдк рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рдЖрддреА рд╣реИред рдмреЗрд╢рдХ, рдпрд╣ рдХрд╣рдирд╛ рдЖрд╕рд╛рди рд╣реИ, рд▓реЗрдХрд┐рди рдЙрддреНрдкрд╛рдж рдХреЗ рдкреВрд░реЗ рдЬреАрд╡рди рдореЗрдВ рдЗрд╕ рдирд┐рдпрдо рдХреЛ рдмрдирд╛рдП рд░рдЦрдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИред рдпрджрд┐ рд╕рдВрднрд╡ рд╣реЛ рддреЛ, рдпрд╣ рдХрд░реЗрдВ - рдЙрд╕реА рдХреНрд░рдо рдореЗрдВ рддрд╛рд▓реЗ рд▓реЗрдВ рдФрд░ рджреЗрдВ ред
рдРрд╕рд╛ рдкреНрд░рддреАрдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЕрдиреБрднрд╡реА рдбреЗрд╡рд▓рдкрд░реНрд╕ рдРрд╕реА рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛрдб etcd рд╕реЗ рдЧрддрд┐рд░реЛрдз рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИред

рдпрд╣рд╛рдВ рдореБрдЦреНрдп рдкрдХрдбрд╝ рдпрд╣ рд╣реИ рдХрд┐ рдПрдХ рдЕрдкреНрд░рдХрд╛рд╢рд┐рдд рдЪреИрдирд▓ рдкрд░ рд▓рд┐рдЦрдирд╛ рдЕрд╡рд░реБрджреНрдз рд╣реИ; рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рджреВрд╕рд░реА рдУрд░ рдПрдХ рд░реАрдбрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдореНрдпреВрдЯреЗрдХреНрд╕ рд▓реЗрддреЗ рд╣реБрдП, рдкрд╣рд▓рд╛ рдзрд╛рдЧрд╛ рдкрд╛рдардХ рдХреЗ рд╕рд╛рдордиреЗ рдЖрдиреЗ рдХрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░рддрд╛ рд╣реИред рджреВрд╕рд░рд╛ рдзрд╛рдЧрд╛ рдЕрдм рдореНрдпреВрдЯреЗрдХреНрд╕ рдкрд░ рдХрдмреНрдЬрд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЧрддрд┐рд░реЛрдзред
рдореИрдВ рдЖрдкрдХреЛ рд░реЛрдорд╛рдВрдЪрдХ рдЧреЗрдо рдж рдбреЗрдбрд▓реЙрдХ рд╕рд╛рдореНрд░рд╛рдЬреНрдп рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВред рдЗрд╕ рдЧреЗрдо рдореЗрдВ, рдЖрдк рдПрдХ рд╢реЗрдбреНрдпреВрд▓рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдХреЛрдб рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрджрд░реНрдн рдХреЛ рд╕реНрд╡рд┐рдЪ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд╣рд▓
рдХреНрдпрд╛ рд╕рдорд╕реНрдпрд╛рдПрдВ рдЕрднреА рднреА рдореМрдЬреВрдж рд╣реИрдВ? рд╣рдордиреЗ рд░реЗрд╕ рдХреА рд╢рд░реНрддреЛрдВ рдХреЗ рд╕рд╛рде рд╢реБрд░реБрдЖрдд рдХреА ред рдЗрд╕рдХреЗ рдмрд╛рдж рд╣рдордиреЗ рдбреЗрдбрд▓реЙрдХ рджреЗрдЦрд╛ (рдЕрднреА рднреА рдЗрд╕рдХрд╛ рдПрдХ рд╡реЗрд░рд┐рдПрдВрдЯ рд▓рд╛рдЗрд╡рд▓реЙрдХ рд╣реИ , рдпрд╣ рддрдм рд╣реИ рдЬрдм рд╣рдо рд╕рдВрд╕рд╛рдзрди рдкрд░ рдХрдмреНрдЬрд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреЛрдИ рд╕реНрдкрд╖реНрдЯ рддрд╛рд▓реЗ рдирд╣реАрдВ рд╣реИрдВ)ред рднреБрдЦрдорд░реА рд╣реИ , рдпрд╣ рддрдм рд╣реИ рдЬрдм рд╣рдо рдкреНрд░рд┐рдВрдЯрд░ рдкрд░ рдПрдХ рдХрд╛рдЧрдЬ рдХреЗ рдЯреБрдХрдбрд╝реЗ рдХреЛ рдкреНрд░рд┐рдВрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ рдПрдХ рдХрддрд╛рд░ рд╣реЛрддреА рд╣реИ, рдФрд░ рд╣рдо рд╕рдВрд╕рд╛рдзрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдордиреЗ рдлрд╛рд▓реНрд╕ рд╢реЗрдпрд░рд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рджреЗрдЦрд╛ред рдЕрднреА рднреА рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИ - рд▓реЙрдХ рдХреЙрдиреНрдЯреНрд░реИрдХреНрд╢рди , рдЬрдм рдПрдХ рд╕рдВрд╕рд╛рдзрди рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдзрд┐рдХ рдкреНрд░рддрд┐рдпреЛрдЧрд┐рддрд╛ рдХреЗ рдХрд╛рд░рдг рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдЧрд┐рд░рд╛рд╡рдЯ рд╣реЛрддреА рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдореНрдпреВрдЯреЗрдХреНрд╕ рдЬрд┐рд╕реЗ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдереНрд░реЗрдбреНрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ)ред

рджреМрдбрд╝ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ
рдЧреЛ рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рджрд┐рдП рдЧрдП рдЯреВрд▓рдмреЙрдХреНрд╕ рдХреЗ рд╕рд╛рде рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рд╣реИред рд░реЗрд╕ рдбрд┐рдЯреЗрдХреНрдЯрд░ рдПрдХ рдРрд╕рд╛ рдЙрдкрдХрд░рдг рд╣реИред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рд░рд▓ рд╣реИ: рд╣рдо рдкрд░реАрдХреНрд╖рдг рд▓рд┐рдЦрддреЗ рд╣реИрдВ рдпрд╛ рдЗрд╕реЗ рдПрдХ рд▓рдбрд╝рд╛рдХреВ рд▓реЛрдб рдкрд░ рдЪрд▓рд╛рддреЗ рд╣реИрдВ рдФрд░ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдкрдХрдбрд╝рддреЗ рд╣реИрдВред
рдЖрдк рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рд░реЗрд╕ рдбрд┐рдЯреЗрдХреНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ рдЗрд╕рдХреА рд╕реАрдорд╛рдПрдВ рд╣реИрдВред рдЖрдЗрдП рд╣рдо рдЙрди рдкрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдзреНрдпрд╛рди рджреЗрдВред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдХреЛрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬреЛ рд░реЗрд╕ рдбрд┐рдЯреЗрдХреНрдЯрд░ рджреНрд╡рд╛рд░рд╛ рдЪреЗрдХ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдкрд░реАрдХреНрд╖рдг рдХрд╡рд░реЗрдЬ рдЕрдзрд┐рдХ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд░реЗрд╕ рдбрд┐рдЯреЗрдХреНрдЯрд░ рд╕реНрдореГрддрд┐ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд╢рдмреНрдж рдХреЛ рдХреЙрд▓ рдХреЗ рдЗрддрд┐рд╣рд╛рд╕ рдХреЛ рдпрд╛рдж рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЙрд▓ рдХреЗ рдЗрд╕ рдЗрддрд┐рд╣рд╛рд╕ рдореЗрдВ рдЧрд╣рд░рд╛рдИ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЧреЛ рдореЗрдВ, рдпрд╣ рдЧрд╣рд░рд╛рдИ рдЪрд╛рд░ рд╣реИ - рдЪрд╛рд░ рддрддреНрд╡, рдЪрд╛рд░ рдПрдХреНрд╕реЗрд╕ред рдпрджрд┐ рд░реЗрд╕ рдбрд┐рдЯреЗрдХреНрдЯрд░ рдиреЗ рдЗрд╕ рдЧрд╣рд░рд╛рдИ рдХреЗ рднреАрддрд░ рджреМрдбрд╝ рдирд╣реАрдВ рдкрдХрдбрд╝реА рд╣реИ, рддреЛ рдЙрдирдХрд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдХреЛрдИ рджреМрдбрд╝ рдирд╣реАрдВ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд░реЗрд╕ рдбрд┐рдЯреЗрдХреНрдЯрд░ рдХрднреА рдЧрд▓рдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рдпрд╣ рд╕рднреА рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдирд╣реАрдВ рдкрдХрдбрд╝реЗрдЧрд╛ред рдЖрдк рд░реЗрд╕ рдбрд┐рдЯреЗрдХреНрдЯрд░ рдХреЗ рд▓рд┐рдП рдЙрдореНрдореАрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдЗрд╕рдХреА рд╕реАрдорд╛рдУрдВ рдХреЛ рдпрд╛рдж рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ред рдЕрд▓рдЧ рд╕реЗ, рдЖрдк рдХрд╛рдо рдХреЗ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред
рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдЕрд╡рд░реБрджреНрдз рдХрд░реЗрдВ
рдмреНрд▓реЙрдХ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдПрдХ рдФрд░ рдЙрдкрдХрд░рдг рд╣реИ рдЬреЛ рд╣рдореЗрдВ рдЕрд╡рд░реБрджреНрдз рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдФрд░ рдареАрдХ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдЯреЗрд╕реНрдЯ рд╕реНрддрд░ рдкрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдпреБрджреНрдзрдХ рднрд╛рд░ рдХреЗ рджреМрд░рд╛рди рдЗрд╕реЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рдЖрдк рдбреЗрдЯрд╛ рдПрдХреНрд╕реЗрд╕ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬрд╝реЗрд╢рди рд╕реЗ рдЬреБрдбрд╝реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреА рддрд▓рд╛рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рд░реЗрд╕ рдбрд┐рдЯреЗрдХреНрдЯрд░ рд╕реЗ рд╢реБрд░реБрдЖрдд рдХрд░реЗрдВ рдФрд░ рдмреНрд▓реЙрдХ рдкреНрд░реЛрдлрд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдВред
рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рдЙрджрд╛рд╣рд░рдг
рдЖрдЗрдП рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХреЛрдб рдХреЛ рджреЗрдЦреЗрдВ рдЬрд┐рд╕реЗ рд╣рдо рдареЛрдХрд░ рдЦрд╛ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдо рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд▓рд┐рдЦреЗрдВрдЧреЗ рдЬреЛ рдХреЗрд╡рд▓ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреА рдПрдХ рд╕рд░рдгреА рд▓реЗрддрд╛ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИ: рдкреНрд░рддреНрдпреЗрдХ рдЕрдиреБрд░реЛрдз рдХреНрд░рдо рдореЗрдВред рдпрджрд┐ рдХреЛрдИ рдЕрдиреБрд░реЛрдз рддреНрд░реБрдЯрд┐ рджреЗрддрд╛ рд╣реИ, рддреЛ рдлрд╝рдВрдХреНрд╢рди рдирд┐рд╖реНрдкрд╛рджрди рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░ рджреЗрддрд╛ рд╣реИред

рдпрджрд┐ рд╣рдо Go рдореЗрдВ рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рддреЛ рд╣рдореЗрдВ рднрд╛рд╖рд╛ рдХреА рдкреВрд░реА рд╢рдХреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╣рдо рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВред рд╣рдореЗрдВ рддреАрди рдЧреБрдирд╛ рдЬреНрдпрд╛рджрд╛ рдХреЛрдб рдорд┐рд▓рддрд╛ рд╣реИред

рдкреНрд░рд╢реНрди: рдХреНрдпрд╛ рдХреЛрдб рдореЗрдВ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рд╣реИрдВ?
рдмреЗрд╢рдХ! рдЖрдЗрдП рдирдЬрд░ рдбрд╛рд▓рддреЗ рд╣реИрдВ рдХреМрди-рдХреМрди рд╕реЗ рд╣реИрдВред
рд▓реВрдк рдореЗрдВ рд╣рдо рдЧреЛрд░реЛрдирд╛рдЗрдЯ рдЪрд▓рд╛рддреЗ рд╣реИрдВред рдЧреЛрд░реЛрдЪрди рдСрд░реНрдХреЗрд╕реНрдЯреНрд░реЗрд╢рди рдХреЗ рд▓рд┐рдП, рд╣рдо sync.WaitGroup
рдЙрдкрдпреЛрдЧ sync.WaitGroup
ред рд▓реЗрдХрд┐рди рд╣рдо рдЧрд▓рдд рдХреНрдпрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЪрд▓ рд░рд╣реЗ рдЧреЛрд░рдЖрдЙрдЯ рдХреЗ рдЕрдВрджрд░, рд╣рдо wg.Add(1)
рдХреЙрд▓ wg.Add(1)
, рдпрд╛рдиреА рд╣рдо рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рдЧреЛрд░рдЖрдЙрдЯ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред рдФрд░ wg.Wait()
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рд╣рдо рд╕рднреА рдЧреЛрд░рдЖрдЙрдЯ рдХреЗ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЬрдм рддрдХ wg.Wait()
рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддрдм рддрдХ рдПрдХ рднреА рдЧреЛрд░реЛрдЪрди рд╢реБрд░реВ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, wg.Wait()
рд╡рд┐рдЪрд╛рд░ wg.Wait()
рдХрд┐ рд╕рдм рдХреБрдЫ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╣рдо рдЪреИрдирд▓ рдХреЛ рдмрдВрдж рдХрд░ рджреЗрдВрдЧреЗ рдФрд░ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдмрд┐рдирд╛ рдлрд╝рдВрдХреНрд╢рди рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓ рдЬрд╛рдПрдВрдЧреЗ, рдпрд╣ рдорд╛рдирддреЗ рд╣реБрдП рдХрд┐ рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИред

рдЖрдЧреЗ рдХреНрдпрд╛ рд╣реЛрдЧрд╛? рдлрд┐рд░ рдЧреЛрд░рдЖрдЙрдЯ рд╢реБрд░реВ рд╣реЛрдЧрд╛, рдХреЛрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрдЧрд╛, рдФрд░ рд╢рд╛рдпрдж рдЕрдиреБрд░реЛрдзреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рддреНрд░реБрдЯрд┐ рд╡рд╛рдкрд╕ рдХрд░ рджреЗрдЧрд╛ред рдПрдХ рдмрдВрдж рдЪреИрдирд▓ рдХреЛ рдПрдХ рддреНрд░реБрдЯрд┐ рд▓рд┐рдЦреА рдЬрд╛рддреА рд╣реИ, рдФрд░ рдПрдХ рдмрдВрдж рдЪреИрдирд▓ рдкрд░ рд▓рд┐рдЦрдирд╛ рдПрдХ рдЖрддрдВрдХ рд╣реИред рд╣рдорд╛рд░рд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреНрд░реИрд╢ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдпрд╣ рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ рдореИрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрд╕реЗ рдкрд╣рд▓реЗ рд╕реЗ рдЗрдВрдЧрд┐рдд рдХрд░рдХреЗ рд╕рд╣реА рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╣рдо рдХрд┐рддрдиреЗ рдЧреЛрд░реЛрдирд╛рдЗрдЯ рд▓реЙрдиреНрдЪ рдХрд░реЗрдВрдЧреЗред

рд╢рд╛рдпрдж рдЕрднреА рднреА рдХреБрдЫ рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВ?
рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдЕрдВрджрд░ req
рдСрдмреНрдЬреЗрдХреНрдЯ рдХреИрд╕реЗ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ, рдЗрд╕рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реИред req
рдЪрд░ рдЪрдХреНрд░ рдХреЗ рдкреБрдирд░рд╛рд╡реГрддреНрдд рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ, рдФрд░ рд╣рдореЗрдВ рдпрд╣ рдкрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЧреЛрд░реЛрдЗрдирдЯрд╛рдЗрди рд▓реЙрдиреНрдЪ рдХреЗ рд╕рдордп рдЗрд╕рдХрд╛ рдХреНрдпрд╛ рдореВрд▓реНрдп рд╣реЛрдЧрд╛ред

рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ, рдЗрд╕ рдХреЛрдб рдореЗрдВ, req
рдорд╛рди рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рд╕рд░рдгреА рдХреЗ рдЕрдВрддрд┐рдо рддрддреНрд╡ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реЛрдЧрд╛ред рдЗрд╕рд▓рд┐рдП, рдЖрдк рдмрд╕ рдПрдХ рд╣реА рдЕрдиреБрд░реЛрдз рдПрди рдмрд╛рд░ рднреЗрдЬрддреЗ рд╣реИрдВред рдлрд┐рдХреНрд╕: рдлрд╝рдВрдХреНрд╢рди рдХреЗ рддрд░реНрдХ рдХреЗ рд░реВрдк рдореЗрдВ рд╣рдорд╛рд░реЗ рдЕрдиреБрд░реЛрдз рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкрд╛рд╕ рдХрд░реЗрдВред

рдЖрдЗрдП рд╣рдо рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рддреЗ рд╣реИрдВ, рдЗрд╕ рдкрд░ рдХрд░реАрдм рд╕реЗ рдирдЬрд╝рд░ рдбрд╛рд▓рддреЗ рд╣реИрдВред рд╣рдо рдПрдХ рд╕реНрд▓реЙрдЯ рдкрд░ рдмрдлрд░ рдЪреИрдирд▓ рдШреЛрд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдЬрдм рдХреЛрдИ рддреНрд░реБрдЯрд┐ рд╣реЛрддреА рд╣реИ, рддреЛ рд╣рдо рдЗрд╕реЗ рдЗрд╕ рдЪреИрдирд▓ рдкрд░ рднреЗрдЬрддреЗ рд╣реИрдВред рд╕рдм рдХреБрдЫ рдареАрдХ рдкреНрд░рддреАрдд рд╣реЛ рд░рд╣рд╛ рд╣реИ: рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реБрдИ - рд╣рдордиреЗ рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рд╕реЗ рд╡рд╛рдкрд╕ рдХрд░ рджрд┐рдпрд╛ред

рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рд╕рднреА рдЕрдиреБрд░реЛрдз рдПрдХ рддреНрд░реБрдЯрд┐ рдХреЗ рд╕рд╛рде рд▓реМрдЯрддреЗ рд╣реИрдВ?
рдлрд┐рд░ рдЪреИрдирд▓ рдХреЛ рд▓рд┐рдЦрдиреЗ рдкрд░ рдХреЗрд╡рд▓ рдкрд╣рд▓реА рддреНрд░реБрдЯрд┐ рдорд┐рд▓реЗрдЧреА, рдмрд╛рдХреА рдЧреЛрд░рдЖрдЙрдЯ рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдХреЛ рд░реЛрдХ рджреЗрдЧрд╛ред рдЪреВрдВрдХрд┐ рдлрд╝рдВрдХреНрд╢рди рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рддрдХ рдЪреИрдирд▓ рд╕реЗ рдЕрдзрд┐рдХ рд░реАрдбрд┐рдВрдЧ рдирд╣реАрдВ рд╣реЛрдЧреА, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдПрдХ рдЧреЛрд░реЛрдЗрди рд▓реАрдХ рдорд┐рд▓рддрд╛ рд╣реИред рдпрд╣реА рд╣реИ, рдЙрди рд╕рднреА рдЧреЛрд░рдХреНрд╖рдХреЛрдВ рдХреЛ рдЬреЛ рдЪреИрдирд▓ рдХреЛ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рд▓рд┐рдЦ рд╕рдХрддреЗ рдереЗ, рдмрд╕ рд╕реНрдореГрддрд┐ рдореЗрдВ рд▓рдЯрдХрд╛рдП рдЧрдП рдереЗред
рд╣рдо рдЗрд╕реЗ рдмрд╣реБрдд рд╕рд░рд▓ рд░реВрдк рд╕реЗ рдареАрдХ рдХрд░рддреЗ рд╣реИрдВ: рд╣рдо рд╕реНрд▓реЙрдЯ рдЪреИрдирд▓ рдореЗрдВ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рд╣рдорд╛рд░реА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдмрд╣реБрдд рдкреНрд░рднрд╛рд╡реА рдирд╣реАрдВ рдмрдирд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрджрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдЕрд░рдм рдЕрдиреБрд░реЛрдз рд╣реИрдВ, рддреЛ рд╣рдореЗрдВ рдПрдХ рдмрд┐рд▓рд┐рдпрди рд╕реНрд▓реЙрдЯ рдЖрд╡рдВрдЯрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рд╣рдордиреЗ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд┐рдпрд╛ред рдХреЛрдб рдЕрдм рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзреА рд╣реИред рд▓реЗрдХрд┐рди рдкрд░реЗрд╢рд╛рдиреА рдкрдардиреАрдпрддрд╛ рдХреЗ рд╕рд╛рде рд╣реИ - рдХреЛрдб рдХреЗ рддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рд╕рдВрд╕реНрдХрд░рдг рдХреА рддреБрд▓рдирд╛ рдореЗрдВ, рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╣реИрдВред рдФрд░ рдпрд╣ рд╢рд╛рдВрдд рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзреА рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдореБрд╢реНрдХрд┐рд▓ рд╣реИ, рд╣рдо рдЗрд╕реЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХреЛрдб рдХреЗ рд╕рд╛рде рдЬрдЯрд┐рд▓ рдХреНрдпреЛрдВ рдХрд░рддреЗ рд╣реИрдВ?

Errgroup
рдореИрдВ рдХреЛрдб рдХреА рдкрдардиреАрдпрддрд╛ рдмрдврд╝рд╛рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВред
рдореБрдЭреЗ рд╕рд┐рдВрдХ рдХреЗ рдмрдЬрд╛рдп рдЗрд░рдЧрдЧреНрд░реБрдк рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкрд╕рдВрдж рд╣реИред sync.WaitGroup
ред рдЗрд╕ рдкреИрдХреЗрдЬ рдореЗрдВ рдпрд╣ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХрд┐рддрдиреЗ рдЧреЛрд░реЛрдЗрдиреНрдЯреНрд╕ рдХреА рдЙрдореНрдореАрдж рд╣реИ, рдФрд░ рдЖрдкрдХреЛ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрд╣ рд╣реИ рдХрд┐ errgroup
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рд╣рдорд╛рд░рд╛ рдХрд╛рд░реНрдп рдХреИрд╕рд╛ рджрд┐рдЦреЗрдЧрд╛:

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, errgroup
рдЖрд╕рд╛рдиреА рд╕реЗ рд╕рдВрджрд░реНрдн рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╣рдорд╛рд░реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдШрдЯрдХреЛрдВ рдХреЛ рдСрд░реНрдХреЗрд╕реНрдЯреНрд░реЗрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ errgroup
ред рдореЗрд░рд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ?
рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдорд╛рд░реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдХрдИ рдШрдЯрдХ рд╣реИрдВ, рдпрджрд┐ рдЙрдирдореЗрдВ рд╕реЗ рдХрдо рд╕реЗ рдХрдо рдПрдХ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╣рдо рд╕рднреА рдЕрдиреНрдп рдХреЛ рд╕рд╛рд╡рдзрд╛рдиреАрдкреВрд░реНрд╡рдХ рд╕рдорд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП errgroup
рдЬрдм рдХреЛрдИ рддреНрд░реБрдЯрд┐ errgroup
, рддреЛ context
рдкреВрд░рд╛ рдХрд░рддрд╛ context
рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╕рднреА рдШрдЯрдХреЛрдВ рдХреЛ рдХрд╛рдо рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддреА рд╣реИред

рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЬрдЯрд┐рд▓ рдмрд╣реБрдЙрджреНрджреЗрд╢реАрдп рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдХрд░рддреЗ рд╣реИрдВред
рдирд┐рд╖реНрдХрд░реНрд╖
рдЗрд╕реЗ рдпрдерд╛рд╕рдВрднрд╡ рд╕рд░рд▓ рдмрдирд╛рдПрдВред рдмреЗрд╣рддрд░ рддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХред рдорд▓реНрдЯреАрдереНрд░реЗрдбреЗрдб рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдЖрдо рддреМрд░ рдкрд░ рдПрдХ рдЬрдЯрд┐рд▓ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЕрдкреНрд░рд┐рдп рдХреАрдбрд╝реЗ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рд╣реЛрддреА рд╣реИред

рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВред рдпрджрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдореЗрдВ рдЖрд░рд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рддрд╛рд▓реЗ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪреЗрдВ, рддрд╛рд▓рд╛-рдореБрдХреНрдд рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛рдПред
рдЧреЛ, рдкреНрд░реЛрдЧреНрд░рд╛рдо рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдЪреНрдЫреА рднрд╛рд╖рд╛ рд╣реИ рдЬреЛ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдХреЛрд░ рдХреЗ рд╕рд╛рде рдкреНрд░рднрд╛рд╡реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрдиреНрдп рд╕рднреА рднрд╛рд╖рд╛рдУрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмреЗрд╣рддрд░ рдирд╣реАрдВ рд╣реИ, рдФрд░ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рд╣рдореЗрд╢рд╛ рджрд┐рдЦрд╛рдИ рджреЗрдВрдЧреАред рдЗрд╕рд▓рд┐рдП, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЧреЛ рдХреЗ рд╕рд╛рде рд╕рд╢рд╕реНрддреНрд░, рдЖрдк рдЬреЛ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдЙрд╕рд╕реЗ рдХрдо рдХреЗ рдХрдИ рд╕реНрддрд░реЛрдВ рдХреЛ рд╕рдордЭрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВред
