рдЯрд╛рдЗрдорд░ рдФрд░ рдЯрд╛рдЗрдордЖрдЙрдЯ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рд╕рд╣реА рддрд░реАрдХрд╛ред

рдХреНрдпрд╛ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ 99% рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдФрд░ рдмрд┐рд▓реНрдХреБрд▓ CPAN рдореЙрдбреНрдпреВрд▓, рдЯрд╛рдЗрдорд░ рдФрд░ рдЯрд╛рдЗрдордЖрдЙрдЯ рдХреЛ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ? рд╡рд┐рд╢реНрд╡рд╛рд╕ рдирд╣реАрдВ рд╣реЛрддрд╛? рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдордд рдХрд░реЛ! рд╡рд╣рд╛рдБ рд╣реИ, рдПрдХ CPAN рдореЙрдбреНрдпреВрд▓ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕рдордпрдмрджреНрдзрддрд╛ рдХрд╛ рд╕рд╣реА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИ: EV ред :) (рд╡реИрд╕реЗ, рдпрд╣ рд╕рднреА рдХрд╛ рдПрдХрдорд╛рддреНрд░ CPAN рдореЙрдбреНрдпреВрд▓ рд▓рдЧрддрд╛ рд╣реИ, рдЬреЛ рдИрд╡реЗрдВрдЯ рд▓реВрдк рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдИрд╡реЗрдВрдЯ рд▓реВрдк рдХреЗ рд╕рд╛рде рдХрд╛рдВрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирддрд╛ рд╣реИ, рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рдЗрд╕рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЗрд╕реЗ рдХрд┐рд╕реА рддрд░рд╣ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реИ!)



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



рд╕рдордп рдФрд░ рд╕рдордпрдмрд╛рд╣реНрдп рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рддрд░реАрдХрд╛ рдиреАрд░рд╕ рд╕рдордп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ:

use Time::HiRes qw( clock_gettime CLOCK_MONOTONIC );

$now = clock_gettime(CLOCK_MONOTONIC);







CLOCK_MONOTONIC рд╕рдорд░реНрдерди рдХреЛ рджреЛ рд╕рд╛рд▓ рдкрд╣рд▓реЗ :: HiRes (рдореЗрд░реА рдкрд╣рд▓ :)) рдкрд░ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛ред рдФрд░ рдЖрдЬ, рдлрд┐рд░ рд╕реЗ, рджреЛ рд╕рд╛рд▓ рдкрд╣рд▓реЗ рдХреА рддрд░рд╣, рдореИрдВрдиреЗ рд╕реАрдкреАрдПрдПрди рдореЙрдбреНрдпреВрд▓ рдХреЛ рдЯрд╛рдЗрдорд░реНрд╕ рдФрд░ рдЯрд╛рдЗрдордЖрдЙрдЯ рдХреЗ рд╕рд╣реА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд╕рд╛рде рджреЗрдЦрд╛ ... рдФрд░ рдореБрдЭреЗ рдХреЗрд╡рд▓ рдПрдХ рд╣реА рдорд┐рд▓рд╛ред :(



All Articles