Category changed from core to extStatus changed from Open to AssignedAssignee set to tadf (tadayoshi funaba)Priority changed from Normal to 3
日付を扱う処理についていろいろまとめたついでに、わりと簡単なことだけど知らないと落とし穴にハマる系のネタを。 日頃いろいろな処理を書いていて、現時刻を扱うこともは少なくないはずです。ですが、これを適当にやっていると困ることが多々あります。 実行中に「現時刻」を元にした処理が食い違う 例えばこんなコード。ログ集計とかやってるイメージです。 class Analyzer(object): def analyze(self): logfile = datetime.datetime.now().strftime('my_log_file.%H') self.save(self.analyze_logfile(logfile)) def save(self, result): now = datetime.datetime.now() self.result[now.hour] = result
2006年12月07日16:30 カテゴリLightweight Languages perl - DateTime->now(time_zone => $obj) # better practice 私はあまりDateTimeは使ってないのだけど、better practiceを見つけたと思うので。 [perl] DateTime->now(time_zone => 'local')って激遅 - おいぬま日報(不定期) (2006-12-06) Perl界隈の日付操作モジュールのデファクトスタンダードであるDateTimeですが、今まで「タイムゾーンなんてシステムで定義されているものから勝手に取ってきてほしい」という理由で DateTime->now(time_zone => 'local'); なんてことをしてたのですが、これが激遅なことが発覚しました。 二行で書くと、以下のとおり。
@ [perl] DateTime->now(time_zone => 'local')って激遅 Perl界隈の日付操作モジュールのデファクトスタンダードであるDateTimeですが、今まで「タイムゾーンなんてシステムで定義されているものから勝手に取ってきてほしい」という理由で DateTime->now(time_zone => 'local'); なんてことをしてたのですが、これが激遅なことが発覚しました。time_zone => 'Asia/Tokyo'と明示的に指定する場合とで、性能差が下記のようにはっきり現れます。以下ベンチマークのスクリプトとその実行結果。 #!/usr/bin/perl use strict; use DateTime; use Benchmark qw(cmpthese timethese); my $result = timethese(5000, { "
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く