タグ

ブックマーク / satosystems.hatenablog.com (3)

  • 【絶対】PC の時計を 2099 年 12 月 31 日にしてはいけない【ダメ】 - satosystemsの日記

    下手すると PC が起動しなくなります。 コンピュータには 2036 年問題というのがあって、簡単に言うと、2036 年のある時刻以降、内部時計が 1900 年に戻ってしまうというもの。まあこれぐらいならかわいらしい現象です。 僕は実際に 2099 年 12 月 31 日 23 時 59 分ちょうどに設定してみました。そこからの 1 分はまさにカタストロフィでした。 まず、常駐しているアプリが不正終了したりエラーダイアログを出したりして、1 分後の大惨事を知らない僕はこの状況を少し楽しんでいました。エラーダイアログのキャプチャなんかを撮ったりして。 Cygwin で date コマンドを打つと、196x 年ぐらいだったので、まさに 2036 年問題が発生していました。 出てきたエラーダイアログのひとつは .NET Framework のスタックトレースが出ていたので、なんだろうな、と眺めて

    【絶対】PC の時計を 2099 年 12 月 31 日にしてはいけない【ダメ】 - satosystemsの日記
    zetamatta
    zetamatta 2013/03/09
    エターナル時計ブリザード。PC は死ぬ(マジで)
  • Lua が組み込まれているアプリ - satosystemsの日記

    Lua が組み込まれているアプリはどんなものがあるか。 ゲーム World of Worcraft: Diablo を世に送り出した Blizzard Entertainment の看板 MMORPG。コア API が Lua でラップされていて、UI なんかはすべて Lua で書かれているらしい。カスタマイズ(というか拡張)も可能で、Lua が使いこなせればウィザードとしてあがめられるとかなんとか。やったことないからよく知らないけど。 ラグナロクオンライン: 今ではパズドラだけど、GungHo と言えば以前はこれだった。ユーザスクリプトでホムンクルスという NPC? の AI を制御できる。バージョンアップで突然こういうことができるようになるのがオンラインゲームのいいところだな。 FF14: オンラインゲームで Lua はお約束なんでしょうか。マクロ一発で着替えたりとか、複雑な手順を簡素

    Lua が組み込まれているアプリ - satosystemsの日記
  • goto でスコープを抜けるとクラスのデストラクタが呼び出されない現象に遭遇 - satosystemsの日記

    ここ一週間ほど仕事でハマった現象。 以下サンプル。 class Foo { public: Foo() { puts("constructor"); } ~Foo() { puts("destructor"); } }; int main(int argc, char *argv[]) { int flag = 0; L0: if (flag++ == 0) goto L1; else goto L2; L1: { Foo foo; goto L0; } L2: return 0; } auto 変数のクラスインスタンスはスコープを抜ける際にデストラクタが呼ばれるが、goto でスコープを抜ける場合もデストラクタが呼ばれることは C++ の言語仕様として保証されている、らしい。実際そのように動作している。 goto では、デストラクタは呼ばれる - masugata_kの日記 ただ、どのよ

    goto でスコープを抜けるとクラスのデストラクタが呼び出されない現象に遭遇 - satosystemsの日記
    zetamatta
    zetamatta 2012/12/09
    手元のg++だと、ちゃんとデストラクタ呼ばれた。いずれにせよ、コンパイラの不具合のような気がする。それはともかく、過去方向に戻るgotoはループに置き換えた方がよいだろう
  • 1