タグ

ブックマーク / qiita.com (3)

  • (翻訳) CoreCLRのソースコードを研究する(一) Objectとは

    .Netプログラマーたちは毎日Objectを扱っています。 もし彼らにObjectとはなんなのかを聞くと、おそらくObjectとはすべてのタイプの基底クラスだと答えるでしょう。 この答は正しいが不十分です。 この記事では、われわれはCoreCLRのソースコードを読んでObjectとはどんなものかをより深く理解できます。 そして最後はメモリー上のObjectの構造を実際に観察します。 Objectのメモリー構造 これからの内容をよく理解するために、まずはObjectのメモリー構造を表す画像をご覧ください: Objectは三つの部分に分かれています オブジェクトヘッダー(=シンクロブロック) (object header = sync block) lock(obj)またはMonitor.Enter(obj)が使うインディクス値、一部のビットフラグも保存されている タイプ情報を指すポインタ (

    (翻訳) CoreCLRのソースコードを研究する(一) Objectとは
  • Three.jsを使っていると「問題が起きたため、このWebページを再度読み込みました。」と出る - Qiita

    iPadでThree.jsを使ったコンテンツを開発していたのですが、しばらくすると「問題が起きたため、このWebページを再度読み込みました。」というメッセージが表示されてページが再読み込みしてしまう現象に遭遇しました。 調べてみたところ、たくさんの画像を取っ替え引っ替え読み込んでいるうちにだんだん動作が重くなり落ちるという現象だということがわかりました。おそらくテクスチャーを切り替える時に前のテクスチャーがメモリ上に残り続けてしまってだんだん空きメモリがなくなっていくのだろうなと思い、実験してみました。 <html> <head> <title>My first Three.js app</title> <style> body { margin: 0; } canvas { width: 100%; height: 100% } </style> </head> <body> <!--

    Three.jsを使っていると「問題が起きたため、このWebページを再度読み込みました。」と出る - Qiita
  • JavaScriptのthisの覚え方 - Qiita

    JavaScriptのthisは同じソースコードでも呼び出し元次第で意味が違ったりして複雑だと思われがちだけど、一回覚えてしまえば簡単だ。 JavaScriptにはthisが4種類ある これだけをしっかり覚えておけば、後は必要な時に 4種類って何があるんだっけ? と考えれば容易に思い出せる。 ちなみに、下記のコードはブラウザ上で実行することを想定している。(なのでwindowを使う) トップレベルのthis グローバルオブジェクトを指す。 var hoge = "fuga"; window.foo = "bar"; // fuga+bar と表示される console.log(this.hoge + "+" + this.foo); (function(){ // 同じくfuga+bar と表示される console.log(this.hoge + "+" + this.foo); })(

    JavaScriptのthisの覚え方 - Qiita
  • 1