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

рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ рд╣рдо рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ: рдХреБрдЫ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдореАрдЯреНрд░рд┐рдХ рджреНрд╡рд╛рд░рд╛ рдЖрдкрдХреЗ рдЖрд╡реЗрджрди рдХреЗ рджреЛ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рдорд╣рддреНрд╡рдкреВрд░реНрдг рдкрд░рд┐рдгрд╛рдоред рдХреИрд╕реЗ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдкрдврд╝реЗрдВред
рд╕реНрдкрдВрджрди рдореЗрдВ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдЕрдиреБрдХреВрд▓рди рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рд╛рдорд╛рдиреНрдп рджрд┐рд╢рд╛рдирд┐рд░реНрджреЗрд╢ рд╣реИрдВ:
- рд╕реНрдерд┐рддрд┐ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддреЗ рд╕рдордп рдпрдерд╛рд╕рдВрднрд╡ рдХреБрдЫ рд╡рд┐рдЬреЗрдЯ рд╕рдВрд▓рдЧреНрди рдХрд░реЗрдВред
- рдЬрд░реВрд░реА рд╣реЛрдиреЗ рдкрд░ рд╣реА рд╕реНрдЯреЗрдЯрд╕ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВред
- рдЕрдкрдиреЗ
build
рддрд░реАрдХреЛрдВ рд╕реЗ рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рд░реВрдк рд╕реЗ рдЧрд╣рди рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдмрд╛рд╣рд░ рдирд┐рдХрд╛рд▓реЗрдВ рдФрд░ рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рдореБрдЦреНрдп рдЖрдЗрд╕реЛрд▓реЗрдЯ рд╕реЗред
рджреБрдЦрдж рд╕рдЪреНрдЪрд╛рдИ рдпрд╣ рд╣реИ рдХрд┐ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдЕрдиреБрдХреВрд▓рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрдИ рд╕рд╡рд╛рд▓реЛрдВ рдХреЗ рд▓рд┐рдП, рдЬрд╡рд╛рдм "рдХрд┐рддрдирд╛ рднрд╛рдЧреНрдпрд╢рд╛рд▓реА рд╣реЛрдЧрд╛ред" рдХреНрдпрд╛ рдпрд╣ рд╡рд┐рд╢реЗрд╖ рдЕрдиреБрдХреВрд▓рди рдЗрд╕ рд╡рд┐рд╢реЗрд╖ рд╡рд┐рдЬреЗрдЯ рдХреЗ рд▓рд┐рдП рдкреНрд░рдпрд╛рд╕ рдФрд░ рд░рдЦрд░рдЦрд╛рд╡ рд▓рд╛рдЧрдд рдХреЗ рд▓рд╛рдпрдХ рд╣реИ? рдХреНрдпрд╛ рдпрд╣ рд╡рд┐рд╢реЗрд╖ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЗрд╕ рд╡рд┐рд╢реЗрд╖ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ?
рдЗрди рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рдЙрдкрдпреЛрдЧреА рдЙрддреНрддрд░ рдкрд░реАрдХреНрд╖рдг рдФрд░ рдорд╛рдк рд╣реИред рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдХреИрд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЗрд╕ рдбреЗрдЯрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВред
рдЕрдЪреНрдЫреА рдЦрдмрд░ рдпрд╣ рд╣реИ рдХрд┐ рдлрд╝реНрд▓рдЯрд░ рдбрд╛рд░реНрдЯ DevTools (рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рд░рд┐рд▓реАрдЬ) рдЬреИрд╕реЗ рдорд╣рд╛рди рдкреНрд░рджрд░реНрд╢рди рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдВрдЧ рдЙрдкрдХрд░рдг рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдлрд╝реНрд▓рдЯрд░ рдЗрдВрд╕реНрдкреЗрдХреНрдЯрд░ рд╢рд╛рдорд┐рд▓ рд╣реИ, рдпрд╛ рдЖрдк рдлрд╝реНрд▓рдЯрд░ рдЗрдВрд╕реНрдкреЗрдХреНрдЯрд░ рдХреЛ рд╕реАрдзреЗ рдПрдВрдбреНрд░реЙрдЗрдб рд╕реНрдЯреВрдбрд┐рдпреЛ (рд╕реНрдерд╛рдкрд┐рдд рдлрд╝реНрд▓рдЯрд░ рдкреНрд▓рдЧрдЗрди рдХреЗ рд╕рд╛рде) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдкреНрд░рджрд░реНрд╢рди рдЬрд╛рдирдХрд╛рд░реА рд╕рд╣реЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдФрд░ Profile mode
рдХрд╛ рдкрд░реАрдХреНрд╖рдг Flutter Driver
рд▓рд┐рдП рдПрдХ Flutter Driver
рд╣реИред
рдмреБрд░реА рдЦрдмрд░ рдпрд╣ рд╣реИ рдХрд┐ рдЖрдзреБрдирд┐рдХ рд╕реНрдорд╛рд░реНрдЯрдлреЛрди рдмрд╣реБрдд рд╕реНрдорд╛рд░реНрдЯ рд╣реИрдВред
рдирд┐рдпрд╛рдордХреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛
рдлрд╝реНрд▓рдЯрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдмрдврд╝рд╛рдирд╛ iOS рдФрд░ Android рдирд┐рдпрдВрддреНрд░рдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдХрдард┐рди рд╣реИред рдпреЗ рд╕рд┐рд╕реНрдЯрдо-рд╕реНрддрд░реАрдп рдбреЗрдореЙрди рд▓реЛрдб рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдХреЗрдВрджреНрд░реАрдп рдФрд░ рдЧреНрд░рд╛рдлрд┐рдХ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреА рдЧрддрд┐ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдмреЗрд╢рдХ, рдореВрд▓ рд░реВрдк рд╕реЗ рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХрдо рдмреИрдЯрд░реА рдЦрдкрдд рдХреЗ рд╕рд╛рде рд╕реБрдЪрд╛рд░реВ рд╕рдВрдЪрд╛рд▓рди рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред
рдиреБрдХрд╕рд╛рди рдпрд╣ рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ рдХрд╛рдо рдХреЛ рдмрд╣реБрдд рддреЗрдЬ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдиреАрдЪреЗ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреИрд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЕрд░реНрдерд╣реАрди рдкреНрд░рд┐рдВрдЯ рдХреЙрд▓ рдХрд╛ рдПрдХ рдЪрдХреНрд░ рдЬреЛрдбрд╝рдХрд░ рдирд┐рдпрд╛рдордХ рдиреЗ рд╕реАрдкреАрдпреВ рдХреЛ рдПрдХ рдмрдврд╝реА рд╣реБрдИ рдЖрд╡реГрддреНрддрд┐ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд┐рдпрд╛, рдЬрд┐рд╕рд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрд╣реБрдд рддреЗрдЬ рд╣реЛ рдЧрдпрд╛ рдФрд░ рдЗрд╕рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдЕрдзрд┐рдХ рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рдирд┐рдд рд╣реЛ рдЧрдпрд╛ред

рдирд┐рдпрд╛рдордХреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛: рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдЖрдк рдЕрдкрдиреА рд╕рдВрдЦреНрдпрд╛ рдкрд░ рднрд░реЛрд╕рд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред рдЗрд╕ рд╕реНрдкреИрди рдЖрд░реЗрдЦ рдореЗрдВ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХреНрд╕ рдЕрдХреНрд╖ рдкрд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд░рди рд╣реЛрддреЗ рд╣реИрдВ (рд╕рдЯреАрдХ рд╕рдордп рд╡реЗ рд╢реБрд░реВ рд╣реБрдП рджреНрд╡рд╛рд░рд╛ рдЪрд┐рд╣реНрдирд┐рдд) рдФрд░ рд╡рд╛рдИ рдЕрдХреНрд╖ рдкрд░ рд╕рдордп рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╣реИрдВред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрдм рд╣рдо рдХреБрдЫ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдкреНрд░рд┐рдВрдЯ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рдкреЗрд╢ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЗрд╕ рддрдереНрдп рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдмрд┐рд▓реНрдб рд╕рдордп рдХрдо рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдирд╣реАрдВред
рдЗрд╕ рдкреНрд░рдпреЛрдЧ рдореЗрдВ, рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рдХреЛрдб рдореЗрдВ рддреЗрдЬреА рд╕реЗ рдмрд┐рд▓реНрдб рдЯрд╛рдЗрдо (рдКрдкрд░ рджреЗрдЦреЗрдВ), рддреЗрдЬреА рд╕реЗ рд░реЗрдЦрд╛рдВрдХрди рд╕рдордп рдФрд░ рдЙрдЪреНрдЪ рдлреНрд░реЗрдо рджрд░ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рд╣реБрдЖред рдЬрдм рдЙрджреНрджреЗрд╢реНрдпрдкреВрд░реНрдг рд░реВрдк рд╕реЗ рдмрджрддрд░ рдХреЛрдб рдмреЗрд╣рддрд░ рдкреНрд░рджрд░реНрд╢рди рд╕рдВрдХреЗрддрдХреЛрдВ рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЖрдк рдЗрди рд╕рдВрдХреЗрддрдХреЛрдВ рдкрд░ рдПрдХ рдЧрд╛рдЗрдб (рд╕рд┐рдлрд╛рд░рд┐рд╢) рдХреЗ рд░реВрдк рдореЗрдВ рднрд░реЛрд╕рд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред
рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдХрд┐ рдореЛрдмрд╛рдЗрд▓ рдРрдк рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХреИрд╕реЗ рдЕрдирдкреЗрдХреНрд╖рд┐рдд рдФрд░ рдЬрдЯрд┐рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рдиреАрдЪреЗ, рдореИрдВ рдХреБрдЫ рдпреБрдХреНрддрд┐рдпреЛрдВ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рддрд╛ рд╣реВрдВ рдЬреЛ рдореИрдВрдиреЗ Google I / O рдХреЗ рд▓рд┐рдП Flutter рдХреЗ рдбреЗрд╡рд▓рдкрд░ рдХреНрд╡реЗрд╕реНрдЯ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкрд░ рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рдПрдХрддреНрд░ рдХрд┐рдП рдереЗред
рд╕рд╛рдорд╛рдиреНрдп рдЯрд┐рдкреНрд╕
- рдбрд┐рдмрдЧ рдореЛрдб (
DEBUG mode
) рдореЗрдВ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдорд╛рдкреЗрдВ рдирд╣реАрдВред рдХреЗрд╡рд▓ рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ Profile mode
рдореЗрдВ рдкреНрд░рджрд░реНрд╢рди рдорд╛рдкреЗрдВред - рдПрдХ рдЕрд╕рд▓реА рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдорд╛рдкреЗрдВ, рдЖрдИрдУрдПрд╕ рд╕рд┐рдореНрдпреБрд▓реЗрдЯрд░ рдпрд╛ рдПрдВрдбреНрд░реЙрдЗрдб рдПрдореБрд▓реЗрдЯрд░ рдкрд░ рдирд╣реАрдВред рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдПрдореБрд▓реЗрдЯрд░ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдорд╣рд╛рди рд╣реИрдВ, рд▓реЗрдХрд┐рди рдкреНрд░рджрд░реНрд╢рди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕реЗ рдЕрд▓рдЧ рд╣реИрдВред рд╕реНрдкрдВрджрди рдЖрдкрдХреЛ рдирдХрд▓реА рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдВрдЧ рдореЛрдб рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдПрдХрддреНрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдбреЗрдЯрд╛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред
- рдЖрджрд░реНрд╢ рд░реВрдк рдореЗрдВ рд╕рдЯреАрдХ рдПрдХ рд╣реА рднреМрддрд┐рдХ рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдЗрд╕реЗ рдЕрдкрдирд╛ рд╕рдорд░реНрдкрд┐рдд рдкреНрд░рджрд░реНрд╢рди рдкрд░реАрдХреНрд╖рдг рдЙрдкрдХрд░рдг рдмрдирд╛рдПрдВ рдФрд░ рдЗрд╕реЗ рдХрд┐рд╕реА рдФрд░ рдЪреАрдЬрд╝ рдХреЗ рд▓рд┐рдП рдХрднреА рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВред
- рд╕реНрдкрдВрджрди рдкреНрд░рджрд░реНрд╢рди рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдЙрдкрдХрд░рдг рдХрд╛ рдЕрдиреНрд╡реЗрд╖рдг рдХрд░реЗрдВред
рд╕реАрдкреАрдпреВ / рдЬреАрдкреАрдпреВ рд░реЗрдЧреБрд▓реЗрдЯрд░
рдЬреИрд╕рд╛ рдХрд┐ рдКрдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рд╣реИ, рдЖрдзреБрдирд┐рдХ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░реЛрд╕реЗрд╕рд░ рдФрд░ GPU рдХреА рдЖрд╡реГрддреНрддрд┐ рдХреЛ рд▓реЛрдб рдФрд░ рдХреБрдЫ рдЕрдиреНрдп рдЖрдВрдХрдбрд╝реЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЙрдирдХреЗ рдирд┐рдкрдЯрд╛рди рдореЗрдВ рдмрджрд▓рддреЗ рд╣реИрдВред (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реНрдХреНрд░реАрди рдХреЛ рдЫреВрдиреЗ рд╕реЗ рдЖрдорддреМрд░ рдкрд░ рдЖрдкрдХреЗ рдПрдВрдбреНрд░реЙрдЗрдб рдлреЛрди рдХреА рдЧрддрд┐ рдмрдврд╝ рдЬрд╛рдПрдЧреАред)
Android рдкрд░, рдЖрдк рдЗрди рдирд┐рдпрдВрддреНрд░рдгреЛрдВ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдо рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ "рд╕реНрдХреЗрд▓рд┐рдВрдЧ рд▓реЙрдХ" рдХрд╣рддреЗ рд╣реИрдВред
- рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдПрдВ рдЬреЛ рдкреНрд░рджрд░реНрд╢рди рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рдХреЛ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХрд░рддрд╛ рд╣реИред рдЖрдк рдкреНрд░реЗрд░рдгрд╛ рдХреЗ рд▓рд┐рдП рд╕реНрдХреАрдпрд╛ рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рдпреВрдирд┐рдХреНрд╕ рд╕реАрдкреАрдпреВ рдПрдкреАрдЖрдИ рдХреА рдЬрд╛рдВрдЪ рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
- рдЖрдк рдХреБрдЫ рдХрдо рдмрд╣реБрдореБрдЦреА рдФрд░ рд╣рд▓реНрдХрд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдпрджрд┐ рдЖрдк рд╕реНрдХреАрдпрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдзрд┐рдХ рдкрд░реАрдХреНрд╖рдг рдХрд╛рд░реНрдп рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдбреЗрд╡рд▓рдкрд░ рдХреНрд╡реЗрд╕реНрдЯ рдореЗрдВ рд╢реЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рджреЗрдЦреЗрдВ рдХрд┐ рдХрд╣рд╛рдВ рдЬрд╛рдирд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЕрдЧрд▓рд╛ рднрд╛рдЧ рдпреВрдЬрд░рд╕реНрдкреЗрд╕ рдирд┐рдпрдВрддреНрд░рдХ рдХреЗ рд▓рд┐рдП рд╕реАрдкреАрдпреВ рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ (рдХреЗрд╡рд▓ рдирд┐рдпрдВрддреНрд░рдХ рдЬреЛ рдкреНрд░реЛрд╕реЗрд╕рд░ рдЖрд╡реГрддреНрддрд┐ рдХреЛ рд╕реНрд╡рдпрдВ рдирд╣реАрдВ рдмрджрд▓рддрд╛ рд╣реИ)ред
- рдпрд╣рд╛рдВ рдЖрдкрдХрд╛ рд▓рдХреНрд╖реНрдп рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рджрд░реНрд╢рди рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рдирд╛ рдирд╣реАрдВ рд╣реИ (рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдкрдиреЗ рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рдирд┐рдпрд╛рдордХреЛрдВ рдХреЛ рдмрдВрдж рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ), рд▓реЗрдХрд┐рди рд░рди рдХреЗ рдмреАрдЪ рддреБрд▓рдиреАрдп рдкреНрд░рджрд░реНрд╢рди рд╕рдВрдХреЗрддрдХ рд╣реИрдВред
- рдЕрдВрдд рдореЗрдВ, рдЖрдкрдХреЛ рд╢реЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдФрд░ рдЙрд╕ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЬрдм рддрдХ рдЖрдк рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░рддреЗ, рддрдм рддрдХ рдЖрдкрдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдбреЗрдЯрд╛ рдЖрдкрдХреЛ рдзреЛрдЦрд╛ рджреЗрдЧрд╛ред

рдбреЗрд╡рд▓рдкрд░ рдХреНрд╡реЗрд╕реНрдЯ рдХрд╛ рдПрдХ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рдВрд╕реНрдХрд░рдг, рдореЗрд░реЗ рдбреЗрд╕реНрдХрдЯреЙрдк рдкрд░ рдлрд╝реНрд▓рдЯрд░ рдЪрд╛рд▓рдХ рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛ред
рд╕реНрдкрдВрджрди рдЪрд╛рд▓рдХ
рд╕реНрдкрдВрджрди рдЪрд╛рд▓рдХ рдЖрдкрдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЕрдкрдиреЗ рдЖрд╡реЗрджрди рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред Flutter.dev рдкрд░ "рдкреНрд░рджрд░реНрд╢рди рд░реВрдкрд░реЗрдЦрд╛" рдЕрдиреБрднрд╛рдЧ рдкрдврд╝реЗрдВ, рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдЖрдкрдХреЗ рдЖрд╡реЗрджрди рдХреЛ рд░реВрдкрд░реЗрдЦрд╛ рдХрд░рддреЗ рд╕рдордп рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВред
- рдкреНрд░рджрд░реНрд╢рди рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЕрдкрдиреЗ рдЖрд╡реЗрджрди рдХрд╛ рдкрд░реАрдХреНрд╖рдг рди рдХрд░реЗрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реВрдЪрдХ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрд╢рд╛ рдлрд╝реНрд▓рдЯрд░ рдбреНрд░рд╛рдЗрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
- рдЕрдкрдирд╛ рдлрд╝реНрд▓рдЯрд░ рдбреНрд░рд╛рдЗрд╡рд░ рдХреЛрдб рд▓рд┐рдЦреЗрдВ рддрд╛рдХрд┐ рдпрд╣ рдЬрд╛рдВрдЪреЗ рдХрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреНрдпрд╛ рдорд╛рдкрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрдкрдХреЛ рд╕рдордЧреНрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдкреНрд░рджрд░реНрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЖрд╡реЗрджрди рдХреЗ рд╕рднреА рднрд╛рдЧреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреНрдпрд╛ рдХрд░реЗрдВрдЧреЗред
- рдпрджрд┐ рдЖрдкрдХреЗ рдЖрд╡реЗрджрди рдореЗрдВ рдпрд╛рджреГрдЪреНрдЫрд┐рдХрддрд╛ (
Random
, рдиреЗрдЯрд╡рд░реНрдХ рдИрд╡реЗрдВрдЯ рдЖрджрд┐) рдХрд╛ рдПрдХ рддрддреНрд╡ рд╣реИ, рддреЛ рдРрд╕реА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП "рдирдХрд▓реА" рдмрдирд╛рдПрдВред рдЯреЗрд╕реНрдЯ рд░рди рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдирд╛ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рдХрд░реАрдм рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред - рдпрджрд┐ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЯрд╛рдЗрдорд▓рд╛рдЗрди рд╡рд░реНрдЧ рдХреЗ
startSync()
рдФрд░ finishSync()
рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдордп рдХреЗ рд▓рд┐рдП рдХрд╕реНрдЯрдо рдИрд╡реЗрдВрдЯ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдХрд╛рд░реНрдп рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрдВрдд рдореЗрдВ finishSync()
рдбрд╛рд▓реЗрдВ рдФрд░ рдЗрд╕рдХреЗ рдЕрдВрдд рдореЗрдВ finishSync()
рдбрд╛рд▓реЗрдВред - рджреЛрдиреЛрдВ рд╕рд╛рд░рд╛рдВрд╢ ( рд░рд╛рдЗрдЯрд╕рдореИрд░реАрдЯреЙрдЗрдлрд╝рд╛рдЗрд▓ ) рдФрд░, рдЕрдзрд┐рдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд, рдХрдЪреНрдЪреА рд╕рдордпрд░реЗрдЦрд╛ ( рд░рд╛рдЗрдЯрдЯреНрд░реАрдорд▓рд╛рдЗрдирдЯреЙрдлрд╝рд▓ ) рдХреЛ рд╕рд╣реЗрдЬреЗрдВ ред
- рдЕрдкрдиреЗ рдЖрд╡реЗрджрди рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдХрдИ рдмрд╛рд░ рдкрд░реАрдХреНрд╖рдг рдХрд░реЗрдВред рдбреЗрд╡рд▓рдкрд░ рдХреНрд╡реЗрд╕реНрдЯ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ 100 рд╢реБрд░реВ рдХрд┐рдПред (рдЬрдм рдЖрдк рдРрд╕реА рдЪреАрдЬрд╝реЛрдВ рдХреЛ рдорд╛рдкрддреЗ рд╣реИрдВ рдЬреЛ рд╢реЛрд░ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ p99 рдореАрдЯреНрд░рд┐рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рддреЛ рдЖрдкрдХреЛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд░рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред) рдкреЛрд╕рд┐рдХреНрд╕-рдЖрдзрд╛рд░рд┐рдд рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП, рдЗрд╕рдХрд╛
for i in {1..100}; do flutter drive --target=test_driver/perf.dart --profile; done
рдЕрд░реНрде рд╣реИ рдХрд┐ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреБрдЫ рдХрд░рдирд╛: for i in {1..100}; do flutter drive --target=test_driver/perf.dart --profile; done
for i in {1..100}; do flutter drive --target=test_driver/perf.dart --profile; done
for i in {1..100}; do flutter drive --target=test_driver/perf.dart --profile; done
ред

Flutter рдореЗрдВ рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдВрдЧ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреА рдЬрд╛рдБрдЪ рдХреЗ рд▓рд┐рдП Chrome рдХрд╛ рд╕рдордпрд░реЗрдЦрд╛ рдЙрдкрдХрд░рдгред
рд╕рдордп
рдЯрд╛рдЗрдорд▓рд╛рдЗрди рдЖрдкрдХреЗ рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдВрдЧ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХрд╛ рдХрдЪреНрдЪрд╛ рдЖрдЙрдЯрдкреБрдЯ рд╣реИред рд╕реНрдкрдВрджрди рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ JSON рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд▓рд┐рдЦрддрд╛ рд╣реИ, рдЬрд┐рд╕реЗ chrome://tracing
рдореЗрдВ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
- рд╕рдордЭреЗрдВ рдХрд┐ рдХреНрд░реЛрдо рдореЗрдВ рдкреВрд░реНрдг рд╕рдордпрд░реЗрдЦрд╛ рдХреИрд╕реЗ рдЦреЛрд▓реЗрдВред рдЖрдк рдмрд╕ рдХреНрд░реЛрдо рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдореЗрдВ
chrome://tracing
рдЦреЛрд▓рддреЗ рд╣реИрдВ chrome://tracing
тАЬрд▓реЛрдбтАЭ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдФрд░ JSON рдлрд╝рд╛рдЗрд▓ рдЪреБрдиреЗрдВред рдЖрдк рдЗрд╕ рд▓рдШреБ рдорд╛рд░реНрдЧрджрд░реНрд╢рд┐рдХрд╛ рдореЗрдВ рдФрд░ рдЕрдзрд┐рдХ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред ( рдПрдХ рдлрд╝реНрд▓рдЯрд░ рдЯрд╛рдЗрдорд▓рд╛рдЗрди рдЯреВрд▓ рднреА рд╣реИ рдЬреЛ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рддрдХрдиреАрдХреА рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рдореЗрдВ рд╣реИред рдореИрдВрдиреЗ рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рдлрд╝реНрд▓рдЯрд░ рдЯреВрд▓ рддреИрдпрд╛рд░ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдбреЗрд╡рд▓рдкрд░ рдХреНрд╡реЗрд╕реНрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред) - рдСрдкрд░реЗрдЯрд┐рдВрдЧ рдореЛрдб рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП
chrome://tracing
рдореЗрдВ рдЯрд╛рдЗрдорд▓рд╛рдЗрди рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП WSAD рдХреБрдВрдЬрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ chrome://tracing
рдФрд░ 1234ред - рдкрд╣рд▓реА рдмрд╛рд░ рдкреНрд░рджрд░реНрд╢рди рдкрд░реАрдХреНрд╖рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╕рдордп, рд╕рд┐рд╕реНрдЯреНрд░реЗрд╕ рдПрдВрдбреНрд░реЙрдЗрдб рдЯреВрд▓ рдХреЗ рд╕рд╛рде рдлрд╝реНрд▓рдЯрд░ рдбреНрд░рд╛рдЗрд╡рд░ рдЪрд▓рд╛рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рдпрд╣ рдЖрдкрдХреЛ рдПрдХ рдмреЗрд╣рддрд░ рд╡рд┐рдЪрд╛рд░ рджреЗрддрд╛ рд╣реИ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдбрд┐рд╡рд╛рдЗрд╕ рдореЗрдВ рдХреНрдпрд╛ рдЪрд▓ рд░рд╣рд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдкреНрд░реЛрд╕реЗрд╕рд░ рдЖрд╡реГрддреНрддрд┐ рдХреЛ рд╕реНрдХреЗрд▓ рдХрд░рдиреЗ рдХреА рдЬрд╛рдирдХрд╛рд░реА рднреА рд╢рд╛рдорд┐рд▓ рд╣реИред рд╕рд┐рд╕реНрдЯреНрд░реЗрд╕ рдХреЗ рд╕рд╛рде рдкреВрд░реЗ рдЖрд╡реЗрджрди рдХреЛ рди рдорд╛рдкреЗрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рд╕реЗ рд╕рдм рдХреБрдЫ рдзреАрдорд╛ рдФрд░ рдХрдо рдЕрдиреБрдорд╛рдирд┐рдд рд╣реЛрдЧрд╛ред
- рдлрд╝реНрд▓рдЯрд░ рдбреНрд░рд╛рдЗрд╡рд░ рдХреЗ рд╕рд╛рде рдПрдВрдбреНрд░реЙрдЗрдб рд╕рд┐рд╕реНрдЯреНрд░реЗрд╕ рдХреИрд╕реЗ рдЪрд▓рд╛рдПрдВ? рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдПрдВрдбреНрд░реЙрдЗрдб
/path/to/your/android/sdk/platform-tools/systrace/systrace.py --atrace-categories=gfx,input,view,webview,wm,am,sm,audio,video,camera,hal,app,res,dalvik,rs,bionic,power,pm,ss,database,network,adb,pdx,sched,irq,freq,idle,disk,load,workq,memreclaim,regulators,binder_driver,binder_lock
рдХреЛ /path/to/your/android/sdk/platform-tools/systrace/systrace.py --atrace-categories=gfx,input,view,webview,wm,am,sm,audio,video,camera,hal,app,res,dalvik,rs,bionic,power,pm,ss,database,network,adb,pdx,sched,irq,freq,idle,disk,load,workq,memreclaim,regulators,binder_driver,binder_lock
рд╕рд╛рде рд▓реЙрдиреНрдЪ /path/to/your/android/sdk/platform-tools/systrace/systrace.py --atrace-categories=gfx,input,view,webview,wm,am,sm,audio,video,camera,hal,app,res,dalvik,rs,bionic,power,pm,ss,database,network,adb,pdx,sched,irq,freq,idle,disk,load,workq,memreclaim,regulators,binder_driver,binder_lock
ред рдлрд┐рд░ flutter run test_driver/perf.dart --profile --trace-systrace
рдПрдкреНрд▓рд┐рдХреЗрд╢рди flutter run test_driver/perf.dart --profile --trace-systrace
ред рдЕрдВрдд рдореЗрдВ, flutter drive --driver=test_driver/perf_test.dart --use-existing-app=http://127.0.0.1:NNNNN/
рдбреНрд░рд╛рдЗрд╡рд░ flutter drive --driver=test_driver/perf_test.dart --use-existing-app=http://127.0.0.1:NNNNN/
(рдЬрд╣рд╛рдБ NNNNN рдкреЛрд░реНрдЯ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ flutter drive --driver=test_driver/perf_test.dart --use-existing-app=http://127.0.0.1:NNNNN/
рджреЗрддрд╛ рд╣реИ) рдХреЛ flutter drive --driver=test_driver/perf_test.dart --use-existing-app=http://127.0.0.1:NNNNN/
ред
рдореИрдЯреНрд░рд┐рдХреНрд╕
рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЙрддрдиреЗ рдореАрдЯреНрд░рд┐рдХ рджреЗрдЦрдирд╛ рдмреЗрд╣рддрд░ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рддрдп рдХрд┐рдпрд╛ рдХрд┐ рдХреБрдЫ рджреВрд╕рд░реЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧреА рд╣реИрдВред
рдирд┐рд░реНрдорд╛рдг рд╕рдордп рдФрд░ рд░реЗрдЦрд╛рдВрдХрди рд╕рдордп (рдореИрдЯреНрд░рд┐рдХреНрд╕ рдЬреЛ TimelineSummary
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ) рдХреЗрд╡рд▓ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрдард┐рди рдкреНрд░рджрд░реНрд╢рди рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдмрдирд╛рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдмрд╣реБрдд рдХреБрдЫ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред
рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб (рдПрдлрдкреАрдПрд╕) рдлреНрд░реЗрдо рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рд░реВрдк рдореЗрдВ TimelineSummary.frameCount
рдкрд░ рд╡рд┐рдЪрд╛рд░ рди рдХрд░реЗрдВред рд╕реНрдкрдВрджрди рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдВрдЧ рдЙрдкрдХрд░рдг рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдлреНрд░реЗрдо рджрд░ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред TimelineSummary
countFrames()
рд╡рд┐рдзрд┐ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдХреЗрд╡рд▓ рдкреВрд░реНрдг рдлрд╝реНрд░реЗрдо рдЕрд╕реЗрдВрдмрд▓рд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреА рдЧрдгрдирд╛ рдХрд░рддрд╛ рд╣реИред рдПрдХ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдЬреЛ рдЕрдирд╛рд╡рд╢реНрдпрдХ рд░реАрдмрд┐рд▓реНрдбреНрд╕ (рдЕрдкрдбреЗрдЯ) рдХреЛ рд╕реАрдорд┐рдд рдХрд░рддрд╛ рд╣реИ, рдПрдХ рдЕрдбреЙрдкреНрдЯ рдХрд┐рдП рдЧрдП рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрдо рдПрдлрдкреАрдПрд╕ рд╣реЛрдЧрд╛ рдЬреЛ рдЕрдХреНрд╕рд░ рдкреБрдирд░реНрдирд┐рд░реНрдорд┐рдд рдХрд░рддрд╛ рд╣реИред
рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореБрдЭреЗ рдбрд╛рд░реНрдЯ рдХреЛрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦрд░реНрдЪ рдХрд┐рдП рдЧрдП рдХреБрд▓ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╕рдордп рдХреЛ рдорд╛рдкрдХрд░ рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдбреЗрдЯрд╛ рдорд┐рд▓рддрд╛ рд╣реИред рдпрд╣ рдЖрдкрдХреЗ build
рддрд░реАрдХреЛрдВ рдФрд░ рдЙрдирдХреЗ рдмрд╛рд╣рд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХреЛрдб рдХреЛ рдЧрд┐рдирддрд╛ рд╣реИред рдорд╛рди рд▓реЗрдВ рдХрд┐ рдЖрдк рд╕реНрдХреЗрд▓-рд▓реЙрдХ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдкреНрд░реЛрдлрд╛рдЗрд▓рд┐рдВрдЧ рдЯреЗрд╕реНрдЯ рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ рдХреБрд▓ рд╕реАрдкреАрдпреВ рд╕рдордп рдХреЛ рдПрдХ рдЕрдЪреНрдЫрд╛ рдЕрдиреБрдорд╛рди рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд┐рддрдиреА рдЕрдзрд┐рдХ / рдХрдо рдмреИрдЯрд░реА рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░реЗрдЧрд╛ред

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

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

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