アカウント名:
パスワード:
日付時刻型もうるう秒対応するのかな?
そりゃ対応するでしょ。そして「60」秒が返ってきてそこら中で例外発生よ
秒が60を返してきただけで例外が発生するようなことってあるか?
日付時刻型クラスがどうなるかですね。ログや通信データに08:59:60が有った時にパースで落ちなければ良いですが。他にも加算、減算で60の扱いがどうなるとか。
メーラーとかブラウザとかヘッダの時刻が正しく取り扱いしてくれるか再確認が必要かも。
今回Windows Serverがこうなりましたけど、AzureやAWSとかの米国にあるLinuxサーバーやサービスとかもうるうをぶっこんでんでくる可能性があるって事で対岸の火事ではいられない可能性が。
規制強化が理由だから入るでしょうね。「一分は60秒」が崩れるってキツイなぁ。
クラスはプロパティオーバーロード追加かなぁ?デフォルトどうする?で揉めそう。。
これ、混在せざるを得ない辺りが厄介ですね。接続先が違う時間軸あり得るとかシャレにならない。
「一分は60秒」が崩れるってキツイなぁ
表現が難しいのだけど、うるう秒がはいったとしても、時間としての1分は60秒のままだよ。あくまで、うるう秒がある場合にうるう秒の情報がないと、ある時刻と時刻の間の時間が不定になる、というだけ。
何いってんの?一日の秒数は変わるのよ。こんなんばかりだとそら混乱するわな。
時間単位としての1日は86400秒で不変です。「暦日の長さ」が(時間単位としての)1日(=86400秒)でなくなるだけです。
うるう秒の挿入に関係なく「暦日の長さ」は変動するものです。というより変動の結果としてうるう秒が挿入されるのです。
いや、内部的な話をしているので。
例えば、DateTime.AddDays [microsoft.com]メソッドは、日付・時刻インスタンスに指定された日数を加算するものです。が、これが内部的にはまさに「時間単位としての1日」*日数を足しているだけなんですよ。(定数MillisPerDay*valueを足しているだけ)なので、DateTimeクラスがうるう秒対応した場合、「うるう秒が入る日にAddDays(1)をしても、日付が変わらない」ということが起き得ます。
例えば、次の日の日付を取得するためにAddDays(1)を実行しているコードは非常に多いです。(.NET Frameworkの中にも、そうしたコードがたくさんある)それらは、うるう秒対応で軒並み誤動作するようになります。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
クラックを法規制強化で止められると思ってる奴は頭がおかしい -- あるアレゲ人
.Net FrameworkやSQL Serverはどうなる? (スコア:2)
日付時刻型もうるう秒対応するのかな?
Re: (スコア:4, 興味深い)
そりゃ対応するでしょ。そして「60」秒が返ってきてそこら中で例外発生よ
Re: (スコア:0)
秒が60を返してきただけで例外が発生するようなことってあるか?
Re: (スコア:0)
日付時刻型クラスがどうなるかですね。
ログや通信データに08:59:60が有った時にパースで落ちなければ良いですが。
他にも加算、減算で60の扱いがどうなるとか。
メーラーとかブラウザとかヘッダの時刻が正しく取り扱いしてくれるか再確認が必要かも。
今回Windows Serverがこうなりましたけど、AzureやAWSとかの米国にあるLinuxサーバーやサービスとかもうるうをぶっこんでんでくる可能性があるって事で対岸の火事ではいられない可能性が。
Re: (スコア:0)
規制強化が理由だから入るでしょうね。
「一分は60秒」が崩れるってキツイなぁ。
クラスはプロパティオーバーロード追加かなぁ?デフォルトどうする?で揉めそう。。
これ、混在せざるを得ない辺りが厄介ですね。接続先が違う時間軸あり得るとかシャレにならない。
Re: (スコア:0)
「一分は60秒」が崩れるってキツイなぁ
表現が難しいのだけど、うるう秒がはいったとしても、時間としての1分は60秒のままだよ。
あくまで、うるう秒がある場合にうるう秒の情報がないと、ある時刻と時刻の間の時間が不定になる、というだけ。
Re: (スコア:0)
何いってんの?一日の秒数は変わるのよ。
こんなんばかりだとそら混乱するわな。
Re:.Net FrameworkやSQL Serverはどうなる? (スコア:0)
時間単位としての1日は86400秒で不変です。
「暦日の長さ」が(時間単位としての)1日(=86400秒)でなくなるだけです。
うるう秒の挿入に関係なく「暦日の長さ」は変動するものです。
というより変動の結果としてうるう秒が挿入されるのです。
Re: (スコア:0)
いや、内部的な話をしているので。
例えば、DateTime.AddDays [microsoft.com]メソッドは、日付・時刻インスタンスに指定された日数を加算するものです。
が、これが内部的にはまさに「時間単位としての1日」*日数を足しているだけなんですよ。
(定数MillisPerDay*valueを足しているだけ)
なので、DateTimeクラスがうるう秒対応した場合、「うるう秒が入る日にAddDays(1)をしても、日付が変わらない」ということが起き得ます。
例えば、次の日の日付を取得するためにAddDays(1)を実行しているコードは非常に多いです。
(.NET Frameworkの中にも、そうしたコードがたくさんある)
それらは、うるう秒対応で軒並み誤動作するようになります。