Вы можете сделать свой собственный time
, который возвращает число с плавающей запятой, например:
use Time::HiRes;
sub time_fp { sprintf"%d.%06d",Time::HiRes::gettimeofday }
Или просто переопределить ядро time
следующим образом:
use Time::HiRes qw(time);
print time(), "\n"; # 1530190722.02601 for example
Проблема с последним заключается в том, что в нем нет места для 6 десятичных знаков (вы упоминали миллисекунды) после этого 10-значного числа в стандартном числе с плавающей запятой (может зависеть от версии Perl и настроек компиляции). Запустите perl -le 'print 1530190907.849523'
, чтобы понять, что я имею в виду. Последнее десятичное число 3 потеряно.