「メモリリーク」を含む日記 RSS

はてなキーワード: メモリリークとは

2019-10-03

anond:20191003222317

実際は早期リターンのメリットのほうがずっと大きいんだが、こういう言い訳をされると、この先メモリリーク責任負わされかねないから、ルールを変えられない

辞めるしかない

2017-12-31

anond:20171231132934

変数定義しなければ、

メモリリークもはたまた不具合も発生しないでしょう?

という教え。

まり机上の空論

2017-11-03

Windows10メモリリーク

23日間ほどスタンバイを利用しながら、Windows使用し続けるとメモリリークになる。

物理メモリ 8 GB

コミットチャージ 32 GB

警告のダイアログが出る。

コンピュータメモリが不足しています

プログラムを正しく動作させるのに必要メモリ復元するにはファイルを保存してから、開いているすべてのプログラムを終了または再起動してください。

このダイアログテキストコピーできない。

イベントビューアを見ると、chromeウイルスバスターメモリを消費していた。

chromeを閉じてMicrosoft Edge を起動してみると、

イベントビューアではEdgeウイルスバスターメモリを消費しているとのこと。

なのでウイルスバスターアンインストール

Windows Defender に変更して様子を見た。

chromeメモリを消費しているとのこと。

物理メモリの利用可能な空き領域はあるけれども警告がでる。

イベントビューアのログWindowsログシステム→警告

Windows仮想メモリの不足状態を診断しました。仮想メモリを多く消費したのは次のプログラムです: coreServiceShell.exe (2848) は 1477959680 バイトを消費し、chrome.exe (12928) は 499216384 バイトを消費し、chrome.exe (18092) は 243965952 バイトを消費しました。

Windows仮想メモリの不足状態を診断しました。仮想メモリを多く消費したのは次のプログラムです: coreServiceShell.exe (2848) は 1521418240 バイトを消費し、MicrosoftEdgeCP.exe (5936) は 921763840 バイトを消費し、MicrosoftEdgeCP.exe (6960) は 575160320 バイトを消費しました。

Windows仮想メモリの不足状態を診断しました。仮想メモリを多く消費したのは次のプログラムです: chrome.exe (5220) は 658739200 バイトを消費し、chrome.exe (5908) は 238960640 バイトを消費し、chrome.exe (10488) は 235864064 バイトを消費しました。

ソース: Resource-Exhaustion-Detector

イベント ID: 2004

タスクマネージャーメモリ

使用中(圧縮) 4.6 GB( 398 MB)

利用可能 3.2 GB

コミット済み 31.8/31.9 GB

キャッシュ済み 1.4 GB

ページプール 741 MB

非ページプール 398 MB

ハードウェア予約済み 91.8 MB

リソースモニターメモリ

ハードウェア予約済み 92 MB

使用中 4822 MB

変更済み 53 MB

スタンバイ 1376 MB

空き 1833 MB

利用可能 3216 MB

キャッシュ済み 1434MB

合計 8100MB

インストール済み 8192 MB

イベントビューアのログXML

省略。

WEB検索しているとWindows 7 からある不具合なのだろうと私は認識している。

長期間使用によるメモリリークが他の方の環境でも再現すると推測しているので、ここに情報を共有する。

2017-10-29

はてなハードウェアエンジニアが少ない件

エンジニア一言で言っても星の数ほどのジャンルがあるが、その中でも代表的なのはハードウェアエンジニアソフトウェアエンジニアだと思う。

まりに広範囲区分けだが、敢えて定義はしないでおく。

さて、自分新米ハードウェアエンジニアで、ソフトウェア趣味人間である

はてなにはソフトウェア記事(及びブックマーク)が多く、日曜プログラマ自分にとって大変有益である

大抵の悩みは検索をかければ解決するし、自分では想像し得ないようなユニーク記事もあり毎日が発見連続だ。

特にユーザコメントが好きで、皆の関心が伺える“はてなはいくら見ていても飽きない。

ただ、ハードウェアに関する記事が少ないことが残念でならない。

エンジニアカテゴリを覗いても、ハードウェアに関する記事が上がっていることは稀である

たまにラズパイIoTキットに関する記事があるだけで、デジタル回路におけるインピーダンスシミュレーションとか、高速差動信号の放射電波対策とか、そういった踏み込んだ記事はほぼ無いと言っていい。

当然アナログ回路のGNDレイアウトに関する記事は皆無だし、ソフトウェア寄りと言えるRTLコーディング記事さえ見当たらない。

ハードウェアエンジニア守秘義務なのだろうか?

・・・・・・

・・・

ソフトウェア技術日進月歩

イマイチ盛り上がらないハードウェア業界比較して、ソフトウェア業界の隆盛は火を見るよりも明らかである

コーディング環境、つまりPCがあればその先には広大な世界が広がっている。

語弊を恐れず言うが、アイディア次第ではその日のうちにスターダムにのし上がることも可能かもしれない。

当然、アマチュアを含めたエンジニア人口を見るとソフトウェアエンジニア人口は突出しているだろう。

なので記事数の多さは人間性質に依るものではなく、単純に人口の違いだろう。

ハードウェア面白いのに、何故手を出す人が少ないのだろうか。

ロボコンなんか見ていると、胸に込み上がるものがあると思う。

ハードウェア自然界の物理法則の下で成り立っているため、主に電磁気学電気回路電子回路勉強するだけでいくらでも応用が効く。

言うなればソフトウェアよりも参入障壁は低いはずで、高校物理で習ってきたこである程度の回路が組める。

FPGAなりでハードウェアアクセラレータ自作し始めると計算機科学知識必要になるが、ここはむしろソフトウェアエンジニアの方が得意な領域だ。

・・・・・・

・・・

こんなことを言っておいて、自分ハードウェアを始めたのは社会人になってからである

学部修士時代の専攻は材料物理学だったため、工学とは全く縁が無かった。

ここから自分ハードウェアの道に進んだきっかけを書こうと思う。

新人研修の昼休み、あるフラクタル図形を高速描画するハードウェア記事が目に留まった。

当時の自分にはその偉大さが理解できなかったが、2年もの間寝食を忘れて没頭できるその世界に心が惹かれた。

人生を変えることになる出会いだった。2012年の春である

早速オームの法則から復習し、使ったこともない半田ごてやテスターを買ってきて4bit CPU製作に取り掛かった。

ALU(算術論理演算回路)以外はディスクリート部品で組んだため、デバッグ含めて完成までに6ヶ月も掛かってしまった。

その後FPGA存在を知り、8bit CPUを載せてみた。

機械語勉強し、命令デコーダ設計して1年後、自分の考えたプログラム動作したときは嬉しかった。

上述した記事追体験しているようで、仕事を忘れて没頭していた。

続いてFPGAマイコン+汎用ROMの組み合わせでプリント基板を起こしてみた。

目的は勿論、あるフラクタル図形の高速描画である

ここでレベル変換やリセットシーケンスなど、デジタル回路の基礎を身に付けることができた。

基板レイアウトの考え方は専門的であるものWEB簡単情報が手に入ったし、殆ど電磁気学世界なので理不尽ものは無かった。

苦労したのがマイコンプログラムだった。

機械語論理的な手順をコード化するだけだったが、組み込みC言語はそのルールが難解だった。

言い方は悪いかもしれないが、人間の考えたルールだろうと理不尽に思える理論もその設計思想を調べもせず暗記で済ましていた。

メモリリークが発生した場合ハードウェアのように現象を観察して仮説検証することが難しく、ダンプなどのデバッグ手法も知らなかった。

そんなとき、社内でセキュアプログラミングなる研修があったため同期と潜り込んでみた。

参加資格の無い自分が参加できたのは、配線だらけの汚い自作CPU子供のような目で見てくれた上司の厚意だった。

そして1年後、自分モニタの中で鮮やかに描画されるフラクタル図形を眺めていた。

上述した研修講師に1年間師事し、半ばマンツーマン計算機科学を教えて頂いていた。

大学講師の方だったため、C言語ルールではなく命令処理系としての働き、ハードウェアとの関連を核にして叩き込んでもらった。

・・・・・・

・・・

紆余曲折を経て、ハードウェアエンジニアとして働いている。

こういう部署では多少なりともソフトウェアができると光るものである

ただ組み込みC言語以外はサッパリのため、日々独学の毎日だった。

そこで出会ったのが“はてな”だった。

そこにある記事はどれも眩しくて、「ある疑問の解決法」を検索するだけでは決して出会えない珠玉記事の宝庫だった。

きっとハードウェア世界にも、自分では想像し得ないような発見があるはずだ。

それこそあのフラクタル図形のような驚きが。

・・・・・・

・・・

今は仕事の傍ら、奇しくもプロになってしまった自分義務として細々とハードウェア記事を書いている。

残念ながら驚くような技術ではないが、誰かにとって小さな発見があれば嬉しい。

これを読んだ人がハードウェアに興味を持ってくれたらと思う。

2017-04-08

ポインタがわからないという人の気持ち

正直全く理解出来ない。

プログラミングは得意な方ではないが、小学生の頃にポインタ概念を調べたところ、一発で理解できた。

社会人になった今でも基本的に考え方は小学生のころと変わっていない。

しかし、ある時思った。作ったプログラムメモリリークを吐いているのを見て、俺はポインタを分かっていないのではないか

ポインタが分かっていたらメモリリークを吐くプログラムを作るはずがない。

なるほどそういうレベルポインタがわからないと言われているのかと気づいた。

2015-12-25

http://anond.hatelabo.jp/20151225102035

こんなん、どうせメモリリークが原因なんでしょ?

1回呼ばれるたびに数キロバイトずつリークしてそれが積もると動かなくなる。

だったら、毎朝午前3時に1回再起動すればいい。

運用回避ってやつやぁぁ。

2015-06-19

世のRubierやPHPer人に質問

・CやC++ってもう学ぶ気がない?

・CやC++経験の上でRubyPHPを使ってる?

メモリ回りの解決で特に困った事ない?(メモリリークや掴みっぱなしによるメモリサイズ肥大化など)

・CやC++メモリ周りの理解を得るための基礎教養という考え?、それとも時代遅れという考え?

パフォーマンスはどこまで行っても二の次?

実装時にオーダーやコピーコストって気にしない?

・Cでしか実装 or 提供されていないライブラリラップして使う事は手段?、それとも無いものとして諦める?

・というかPhalconってどうよ

2015-02-17

http://anond.hatelabo.jp/20150216235149

アドレスがわかったって見逃しでメモリリークは起こるし、デバッグするのにダンプファイル解析なんてしたくないし、やっぱJava的なもの必要だと思うけど。

2013-11-20

Androidのdevice monitorで業務アプリの画面キャプチャを取り続けると

五十枚超えたあたりから右下のGCマーク連打しても使用メモリ領域が100MBを上回って、

さらにほっておくとちゃちい社用PCクラッシュしないまでも固まってその度に部下がキーボードクラッシャー化してる......

SDKは最新だし対応策はないだろうからほっとくべきなんだろうけど、なんかモヤモヤする。

つーか、メモリーリーク調べるアプリメモリリーク起こすって何でやねん。

2012-10-13

Objective-C勉強したいならコレを読め2012秋

前提

前提2

公式ドキュメント

日本語ドキュメント - Apple Developer

日本語化された公式ドキュメント。全てを読むのは難しいが、「Objective-C プログラミング言語」「Objective-Cによるプログラミング」を読めば、大半の入門書より網羅的に解説している。

ろくに書籍化されていない情報日本語で読むにはここしかない。

androidでは一切ドキュメント日本語化されず、公式チュートリアル日本語化でさえ有難がられる(そして一般の開発者が理解していない)惨状なので、日本語資料の存在を有難がるべき。

読む際の注意点

クラスリファレンス

XCode内で調べたいクラスでOption+右クリックでクイックヘルプを開き、更にクラス名をクリックすると、オーガナイザにクラスリファレンスが表示される。

ここで概要を読めばおおよそは分かる。

リファレンスに使われている単語は限られているので、英語が苦手で文法が不明瞭でも、読み続けさえすればある程度意味は把握できるようになる。

福井高専の有志による日本語リファレンス存在するが、更新が古い上に意味真逆に捉えた最悪な翻訳が野放しになっており、オリジナルへのリンクもない仕様なので、読むべきではない

詳解Objective-C 2.0 第3版

ベースObjective-Cの入門書が欲しいのであれば、この本一択

iOSに限定しないことで、Cocoa TouchCocoaのサブセットであるがゆえの制約など、iOSだけ見ているとなぜそういう仕様になっているのか分からない部分が明瞭になる。

ある程度理解したつもりでいるiOSプログラマでも、おそらく新しい発見がある。

Dynamic Objective-C

マイナビの連載でweb無料で読むことができるが、加筆修正された書籍版も販売されている。

約7年前に始まった連載なので、情報としては古く、ポージングなど既に廃止されたテクニックについて語っていたりもするが、その内容は色褪せない。

Objective-Cランタイムがどのようにオブジェクト指向C言語を結び付けているのか、クラスメソッドの実体とは何なのかを明らかにしていく。

iPhoneプログラミング UIKit詳解リファレンス

正直詳解と呼ぶほど詳しくないので、UIKitで困ったら素直にクラスリファレンスに頼った方が良い(ネットググるのは間違った情報に当たる確率が高いのでおすすめしない…)。

しかし丁寧な解説はUIKitに触れる際に一読する価値はある。

惜しむらくはiOS4時代のもので、バージョンアップ時にそれなりにUIKitに変更が加えられるので、それを考慮に入れて読むこと。

  • iOS5ではViewController周りに変更点が多い。大きな変更点で覚えているのは、UIAppearanceプロトコルで外観の操作ができるようになったりとか。
  • iOS6ではViewControllerのライフサイクルが変更したほか、属性付きテキストや使えるようになったり、テーブルビューヘッダが再利用可能になるなど細々とした修正点も。

iOSデバッグ最適化技法

タイトルからは中級者以上を想定しているように見えるが、実際には初学者向けで、retainを使ったメモリ管理から話が始まる。当然、MRC時代の本。

しかデバッガを用いたクラッシュ原因の特定や、Instrumentを使ったメモリリークの防止など、より品質の高いアプリケーションを作るノウハウについて触れているのが異色。

iOS開発におけるパターンによるオートマティズム

iOS開発で多用するMVCを利用したデータ管理や、テーブルビューによるリスト表示などをパターンとして紹介する本。

「使い方は分かったけど、どう作ればわからない」という人に作成の一つの指針としておすすめだが、万人に対してこの通りに作れ、とは薦めにくい。

この本は、強力な仕組みながら解説の乏しいCore Dataをプッシュしてページ数を割いているのが貴重なのだけど、NSFetchedResultsController(訂正しました。指摘ありがとうございます!)をスルーしているため実用性を大きく欠いてしまっている。

iPhone Core Audioプログラミング

大半の用途ではAVAudioPlayerを使用すれば困らないと思うのだけど、日本語Coreフレームワークについて1冊本が出ていて、これだけ詳細な情報が手に入るというだけで読まないと損。

独創的で優れた楽器アプリ日本のAppStoreからこれだけ多く登場したのは、この本の存在があったからに他ならないように思う。

エキスパートObjective-CプログラミングiOS/OS Xメモリ管理マルチスレッド

2012年はてな匿名ダイアリー名作ランキング50選様に取り上げて頂いた関係で、再び日の目を見ているようですので、この一冊を追加。

冒頭のメモリ管理の話が平易すぎて読む本を間違えたかと思ったが、ARCBlocks挙動を実装レベルで解説する以降の章はまさにエキスパートに相応しい内容。「使い方」の一歩先を知りたい人におすすめ

モダンスレッドプログラミングAPIであるgcdについても、網羅的な解説がある。

2010-11-18

メモリリークとか勘弁してくれ

boostスレッド作るだけでメモリリーク、並列処理書くのはあきらめた

int main() {

boost::thread_group thread_group;

for (int i = 0; i < 5; i++) {

thread_group.create_thread(f1);

}

thread_group.join_all();

#ifdef _DEBUG

_CrtDumpMemoryLeaks();

#endif

return 0;

}

2010-04-27

伝説PHP作者「Rasmus Lerdorf」名言集を聞くと嫌PHP厨がファビョる

  • 今のPHPを作ったのは、何十人もの開発者ですよ。私は1人目の開発者だったに過ぎません。
  • PHPは、歯ブラシみたいなものですね。毎日使うものですけど、だから何でしょう?誰が歯ブラシの本なんて読みたがります?
  • パーザを書くのは苦手です。本当にダメなんです。今でもね。
  • PHPには「protected属性」も「仮想メソッド」もありますよ。情報学科の教官が「重要だ」っていうやつは何でもね。僕自身は、こんなものどうでもいいと思ってますけど。
  • プログラミングを好む人がいるのは知ってますが、全く理解できないですね。
  • プログラミング言語を作るつもりはありませんでした。どうやって作るのかも知りませんし。論理的に必要だと思われるものを足していっただけなんです。
  • 僕の発言に怒ってる人がいるようですね。僕がプログラマとしてひどいのは認めますけど、でも、多分あなたたちよりマシだと思いますよ(笑)。

元ネタ 伝説喫煙者黒木 灰次郎」名言集を聞くと嫌煙がファビョる 無題のドキュメント

ソースRasmus Lerdorf - Wikiquote

2010-01-08

objective-C初心者の俺がハマった5個のくだらないポイント

X-Code勉強するのがめんどくさかったので、はじめコマンドラインでやろうとしたせいでかなりくだらないところでハマった。このあたりのことを書いたサイトがないので、増田に書いておく。

コンパイラオプションに「-framework Foundation」をつけなかった

つけてください。つけないとwarningがいっぱい出るよ。

コンパイラオプションに「-fobjc-gc-only」をつけなかった

つけてください。つけなくてもコンパイルできるけど、実行時にメモリリークが起きたと警告が出る。このオプションをつけるとかベージコレクションが有効になるよ。

文字列配列を使ったのに「#import <Foundation/NSString.h&gt;」等をヘッダに書かなかった</h5&gt;

書いてください。書かないと

warning: no ‘ほげほげ’ method found

warning: (Messages without a matching method signature

warning: will be assumed to return ‘id’ and accept

warning: ‘...’ as arguments.)

みたいのがいっぱいでるよ。よもや文字列配列を使うだけで、インポートが必要になるとは思わなかったよ。

配列を「list = [1, 2, 3, 4, 5];」みたいなので作ろうとした。

NSArrayクラスはこうした表現は使えないよ。まじで。

しかもNSArrayクラスは要素の追加もできないよ。あとから要素を追加するなら、NSMutableArrayね。

途中まで「objective-C」ではなく「object-C」だと思っていた。

T/O

2008-08-23

上司の自宅での食事会に同期6人が誘われた。

今回で二度目だ。

自宅にお呼ばれして、奥様の手料理お酒をいただき、小学生のお子さんと遊ぶ、というのが前回の流れ。

正直、楽しむというより色々と気を使うので乗り気ではないが、断れるものでもない。

と思っていたら、3人が欠席。

1人は誘われた時点で既に用事が入っていて、1人は病欠(と思いたい)、あと1人は逃げた。

私も逃げたい。

今日から生理が始まって腹痛腰痛イライラ

たぶん今晩もそんな状態だろう。

だいたい生理中に他人の家に長時間居るのは気を使う。

前回のお食事会はなんと7時間も続いた。

今回は何時に帰れるやら。

体調不良の他にも行きたくない理由は色々あるが、誘われた時点で5人は行けるはずだったのがすでに3人。

ここで私が行けないとなると2人になってしまう。

それは申し訳ない、と思うのは私だけなんだろうか。

逃げた1人は確信犯で、上司には参加できると言いつつ、別の予定を入れやがりました。

しかもメールで、「まだ行かないことを伝えてないけど、大丈夫かなぁ」なんてのたまってるので

「明日朝イチで電話入れなよ!」と送ったメールの返信が以下。

「うん、自分も体調不良ってことにしとくわw ごめんよー!あとは頼んだ!m(_ _)m」

キレた。

思わず携帯を壁に投げつけた。

本気で体調悪い人間に向かってそれ言うか。

まぁ、本当のところは逃げる同期がうらやましいんだけど。

面倒なこと全部押し付けて逃げられる同期がうらやましい。

それでたいした罪悪感もない同期がうらやましい。

状況的に逃げれない位置の私

がいるから後はなんとかなるだろうと逃げる同期

逃げられると余計に自分だけは逃げれなくなる私

このループに入社後数年で何度か入ってます。

そのうちメモリリーク起こしますよ。

2008-07-24

http://anond.hatelabo.jp/20080724035950

プログラマーお仕事

あたし・・・実は・・・プログラマーなんだ。

ずっと、黙ってて、ごめん。・・・隠してて、ごめん。

でも、どうしても言えなかったの。

あたしがプログラマーだって知ったら、きっとみんな離れていっちゃうって思って。こわくて。

わかってる。わかってるよ。

プログラマー初級シスアドを通った人だけがなることができる、カスタマープロフィットに関わるシリアスビジネスだって。

でもね・・。

でもね、全然ちがうんだよ。

あたし、みんなが思ってるようなキレイなものじゃないんだよ。

あたしは汚れている。

あたしのキーボードは、汚れているんだよ。

プログラマーになったとき、すごく嬉しかった。知り合いのハッカーになったような気でいたの。

あたし馬鹿だから、お客様ビジネスを作るんだ!なんて、本気で思ってた。

でもね、全然違ったんだよ。

元請から言い渡された Sヨ の詳細設計仕様書は全く別のものだった。

お客様ビジネスを、まるでビル・ゲイツのように平等に助けるようなものじゃなかった。

あたしたちプログラマーに課せられた任務、・・・・それは、デバッグ だった。

生きるべき仕様と、それ以外のバグのふるいわけ。

そして、それを見守ること。

ねぇ知ってた?

この世界には、あるんだよ。こんな日本のど真ん中にね、平然と、あるの。

どうなっても大丈夫バグっていうのが。

プログラマーはね、それを見守るの。

プログラマー六本木ヒルズホリエモンで、勝ち組特権階級の象徴だからね、

そこにあるだけで、まるでビジネスが行われているかのような錯覚を起こさせる。

あたしの仕事は、そうやって、平等にビジネスが行われているかのように見せる暗幕みたいなものだったの。

ソフトウェアなんて、全然、救えなかったよ。

救う義務も権利も、この任務にはなかったの。

例え、その仕様がどうすれば助かるか、明確に解っていたとしても、

あたしたちは元請の命令が無いかぎり、何一つのコーディングもできない。

苦しいとサポート電話をかけ続けるクレーマーがいても、

あたしたちにはパッチ仕様変更も与えることはできないの。

ただ、ただ、走って火消し屋を呼びに行くだけ。そして伝えるだけ。

でもね、この国の「火消し屋」は非常に貴重な存在

火消し屋は稀有な存在

夜なんかになれば、一つのフロアにどこからともなく現われるの。

たくさんのプログラマーたちが、一人の火消し屋に群がっていた。

先生、コアを吐いている人がいます!」

先生、表領域が苦しい人がいます!」

先生サニタイズが弱い人がいます!」

先生デッドロックでもがいてる人がいます!」

懸命にプログラマーたちが叫んでた。

でも火消し屋は一人。

私も声を荒げて「苦しい言い訳をするプログラマーがいます!」って叫んだの。

でも、ここでもふるいわけが始まる。

人員レベル、難度、納期。そんなものが現象と一緒くた になって命令が言い渡される。

「とりあえずスタックトレースを」

と言ったきり、火消し屋は朝までチームのもとに来れなかったの(お客さんのところに言い訳に行った)。

その日、10秒ごとに Mantis の履歴が増えた。

「苦しい、苦しい、まだ苦しい」

「もう少しだけ待ってください、今火消し屋、来ますから・・」

何度も火消し屋のもとに走ったけど・・・。

火消し屋は、今にも心臓の止まりそうなお客さんと仕様と納期の折衝にあたっていた。

あたしは火消し屋に背中側から叫んだ。

「null チェックを入れても、まだぬるぽみたいなんです!」

「ガッ!」

コメントアウトの行数を上げた。でも駄目だった。QA からの質問は止まない。

そのバグだけじゃない。

トイレに連れて行ってください(コンプライアンス的な意味で」

「基板が焼けたから替えてください」

「エスタロンを飲ませてください」

「ブートが走らないんですが」

「眠れません」

デバッガを走らせる。

忙しさにコードが荒くなる。

残業時間が 400 越えたプログラマーエレベーターに乗って外に出て行こうとする。

遠くのフロアで、缶コーヒータバコの売り切れ音が聞こえる。

必死にあたしもふるい分けた。

今、一番検収ハネられる危険があるバグから、一番仕様満たしてないバグから、手を差し伸べなきゃ。

「いつになったら納品されるんだ!」と言われても。

「単価高い」と言われても。

私は頭を下げたり、ちょっと言い争ったりもしながら、

バグが、バグが、バグが」と言う人のとこに走ったよ。

家から家族が消えていた。離婚届をかいていた。

あたしはカーネルだ!と思った。

一刻を争うバグ対。火消し屋に聞いてる時間は無かったの。

あたしは火消し屋の指示を待たずにロジック検査をした。差分プログラミングの extends だった。

急いで火消し屋に連絡した。

「差分プログラミングの extends です。継承元のコードいじっていいですか?!」

「いや、コードを見ないとわからない、ただこっちの処置があるから、10分後に行く」

コードは胸を掻きむしるようスパゲッティしていた。

「待てません!リリースします!」

あたしは火消し屋の指示無くパッチコミットした。バグの症状はスッと納まった。

それは駄目なことだったけど、一人のバグを救ったことに、あたしは浮かれてたの。

貧相な正義感をぶら下げて、意気揚々と自席に戻ってきたの。

自席の・・・・

自席のモニターの一台の波形が、フラットになってた。

あたしは急いでスタックトレースに飛んだよ。

でも、亡くなってた。

ログを吐けないプロセスさんだった。

システムコールも呼べない人だった。

あたしは、その日、目の前の苦しいバグに夢中で、ps なんか見てなかった。

それでもね、・・・あたし、まだ、プログラマーなんだよ・・。

火消し屋は QA に「いつ何があってもおかしくない COBOLer の書かれたコードでしたから・・」と時間稼ぎの工作をしていた。

QA のテスターは「ありがとうございました」と額に青筋を浮かべてバグレポートに「仕様です」と書いて取り下げた。

そして、あたしにも「プログラマーさん、ありがとね」と言ったの。

大好きな、ソフトウェアだった。

このシステムが立ち上がる頃から知っていて、αリリースから知っていて。

「自分は寂しがり屋だから、最期は dankogai に手を握ってもらいながらホッテントリ入りしたい」と言っていた。

あたしが新人の頃から知っていて、viカーソル移動が苦手だったのも知っていて、

Xenix はわしが育てた」が口癖だった。

「まぁ、・・・歳だったし、運用中にも止められないって言ってたからなー」

と火消し屋があたしの背中ごしに言った。

あたしは GC モニターの記録を見てたの。

その記録には、波形が Full GC 後もヒープ使用量が右肩上がりとなりメリリークするさまがしっかりと記録されていた。

高負荷だから死んだんじゃない、そこにはメモリリークで死んでくプロセスがあった。

でも、そんなこと全部まるめこんで、kill んじゃって仕方ないっていうプロセスが、そこにはあったんだ。

似たようなことはざらにあった。

何人ものプログラマーが、自社ビルの屋上の端から零れていったよ。

でも、あたし・・・プログラマーなんだ。

誰も、辞めろって言わないの。

火消し屋は鉄火場にブチ込まれただけだから、言わない。

顧客は実情がわからないから、言わない。

プログラマー同士は実情がわかってるから、言わない。

IPA はきっと、全部知ってて、それ込みで「それが10年は泥のように働けということだ」と言うかもしれないけど。

いや、言わないか。IPA は、何も言わない。きっと。

救えたかもしれないバグを、プログラマーは一番わかってる。見えてしまう。

PM の指示が適してないのも、判断が遅いのも、仕様変更履歴がのってないのも、全部わかってる。

それでも「あの時!」と、自分の行動と判断を何度も振りかえる。

その向こうにはいつも「あのとき、こうしておけば」が、くっきりと見える。

でも、救えなかった責任も、見過ごした責任プログラマーには問われない。

プログラマー仕事は、責任を負うことじゃないから。

プログラマーって・・ほんと、なんなんだろうね・・・。

プログラマーなんて、なんの仕様検討も許されていないのに、

パッチ一粒すら出せないのに、

設計一つ指示できないのに、

テストパターンに関わることなんて、一つも独立してできないのに、

テスト部門が持たされてるのはプログラマーコールだけなんだよ。

どんなに辛くてもプログラマーしか呼べないなんて。

そしてあたしたちは色んなものを抱えて、バグの前に立つ。

火消し屋が来ること、来れないこと、

できるデバッグがあること、ないこと、

SIer未来、残された時間

色んなことを知りながら、本当の意味世界を変えられるコーディング力もないままに、

さも救いのギークが舞い降りたかのような顔で。

IT ギョーカイが崩壊していく。

全然止められない速度で。

その日○製作所の城で、あたしは見てるんだ。

沈んでいく汎用機の命を。

それがね、2008年プログラマーお仕事



----------------

不謹慎かつ日本語崩壊でサーセンwwww

医療な人とコンピュータな人ってネット上見てる限りにおいては親近感抱いてるっぽいよね。

2008-03-28

AutoPagerize のひどさについて

AutoPagerize は1ページにどんどん内容を追加していく形になるゆえに、

メモリ消費量が半端ねぇ。特に Firefox の場合やばすぎる。

メモリリークで固まる。落ちる。

http://d.hatena.ne.jp/os0x/20080328/1206679890

2007-12-06

予約動作を

中断できないって、ウイルスバスター何様だよ!!

さらにXPでのメモリリーク疑惑・・・

2007-09-18

[]3日目

日立ち上がらなくなったEclipseは、RDT0.9.0を上書きしなおしたらEclipseが起動するようにはなった。ただ、Rubyの開発でEclipseの導入は諦めた。Java環境をこれ以上壊したくない。

Railsがなんだかよくわかっていないので、

【特選フリーソフト生産性の高いWeb開発環境 Ruby on Rails

http://itpro.nikkeibp.co.jp/article/COLUMN/20060424/236113/?P=3&ST=lin-server

ここらへんをやる。いうとおりにやったら出来なかった。

ruby script/generateでエラー吐いてますよ。

一年前の記事が役にたたないなんて…。

細かいレベルで違うのは合わせられるけどlibレベルでio syntaxとか吐かれると、追う気がなかなかおきない。

Rails 1.2.3、Ruby 1.8.6は相性悪いのかな??

困ったな。このレベルでの導入障害は予想外。

http://japan.zdnet.com/video/screencast/story/0,3800079413,20354695,00.htm

これを見てて思った。この秒読みのおねーちゃん萌え。というのは冗談で、

何かRuby on RailsってColdFusionっぽくない?言語体型というより基本コンセプトというか、そういうのが。

Railsについて新しい記事を探すことにした。

http://japan.zdnet.com/sp/report/story/0,2000056431,20352478,00.htm

verと環境がそろった記事発見

なんだ知らないのがいっぱいあるぞ。

Instant Rails http://rubyforge.org/frs/?group_id=904

MySQL/Ruby 2.7.3 (native driver)

Mongrel 1.0.1

ここらへんなんだろ?

さっそく上から追ってみる。

Instant Railsインストールができない。

起動させるとWarnigが出て、プロセス強制終了させてもループに入っちゃって消えない。

なんだこれ><

OKボタンだけの無限ループ警告って一番やっちゃいけなよ・・・。

つか、Ruby関連の何かメモリリークしてない?

普段400MB程度しかつかってないマシンなんだけどアプリ起動していない状態で800越してる。

もうかなり萎えてます。

素の開発環境立てればよかった…。何かぶつかってるのかな。

昨日の増田

http://anond.hatelabo.jp/20070917201801

2007-06-04

[]??Delphihacks??Delphi??Win32API??

Delphi - Wikipedia??Windows開発の決定版 - Delphi(Skype??なでしこ)

タグ「delphi」を含む注目エントリー - はてなブックマーク

Delphiアプリケーションのメモリリーク検出法

Delphiアプリケーションのメモリリーク検出法 (山本隆の開発日誌)

作ろう!コンポーネント Delphi C++Builder

http://www.componentsource.co.jp/features/delphi/

TMS Software | Productivity software building blocks

Components > Effects and Multimedia > Video. Torry's Delphi Pages

Components > Effects and Multimedia > Audio. Torry's Delphi Pages

Components > Effects and Multimedia > Voice. Torry's Delphi Pages

Components > Effects and Multimedia > Direct X. Torry's Delphi Pages

try finally end

CとDelphiの対比表

eXeScope(Windows95/98/Me / ユーティリティ)

Delphi - テクノラティブログ検索

2ch検索: [Delphi]

Delphi-ML〓〓〓〓〓〓〓〓〓〓〓??About Delphi

Delphi Q & A掲示板

Delphi Q & A 〓f〓〓〓〓 〓〓〓〓〓〓O〓〓(HTML〓o〓[〓W〓〓〓〓)

fdelphi.com

Delphi入門

旧 Delphi 入門??Seventh Delphi

Delphiメモ

超ローテクDelphi講座

俺のためのDelphi学習

Delphi はじめの一歩

VB〓〓VC〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓H

Delphi の格言

キーボードからの入力取得

マウスボタンのクリック、マウスの位置情報の取得

ジョイスティックからの入力取得

バッカーへの階段: 入門:キーロガー

テキストファイルを読み書きする

テキストファイルのロードとセーブ

DelphiによるWin32API

Delphi WAVEサウンド音を鳴らす/Tips & Tricks

MIDI、WAVEファイルを再生する

サウンドを読み込んで鳴らす

MIDIを演奏する MCI/midiStream

5分ではじめるDelphi - 第1回 簡単なメディアプレーヤの作成(前編)

MP3プレイヤーを作る>dllによる再生

Controling sound volume from code

Torry's Delphi Pages

lsMicrophone: mxl.dwComponentType :=MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE;

MIXERLINE_COMPONENTTYPE_DST_SPEAKERS

MIXERLINE_COMPONENTTYPE_SRC_WAVEOUT

SwissDelphiCenter.ch : ...set the volume for the microphone/ mute it (enhanced)?

Components > Sound Effects > Mixer. Torry's Delphi Pages

uses MMSystems;

//

PlaySound('C:\WINNT\Media\start.wav', 0, SND_FILENAME or SND_ASYNC);


ビットマップを表示しよう

画像ファイルを指定した位置へ表示

俺Delゲーム応用

画面をキャプチャして表示する

めもニャンだむ

Delphi6でプログラミング ビットマップの半透明コピー AlphaDraw

画像処理プログラミング講座

Graphic Effect

カラー画像をモノクロ画像に変換

procedure TForm1.Button1Click(Sender: TObject);

var

bmp1,bmp2 :TBitmap;

begin

bmp1 :=Tbitmap.Create;

bmp2 :=Tbitmap.Create;

try

bmp1.LoadFromFile('C:\Program Files\Common Files\Borland Shared\Images\Splash\256Color\FINANCE.BMP');

bmp2.LoadFromFile('C:\Program Files\Common Files\Borland Shared\Images\Splash\256Color\FACTORY.BMP');

Form1.Canvas.Draw(10,10,bmp1);

Form1.Image1.Canvas.Draw(10,10,bmp2);

finally

bmp1.Free;

bmp2.Free;

end;

end;


無料版Delphi6でSTGをつくるためのプログラミング講座 Ver.2005 Jan.

Delphiでわずか59KBのオセロを作る方法

めもニャンだむ:BIOS 情報

コンストラクタとデストラクタ

SwissDelphiCenter.ch : ...get the MAC Address?

乱数

DelphiでMD5

もっと楽にGUIとの連携がしたい:Python + Delphi = P4D(Python for Delphi) - ふにゃるん

Delphi WindowsのOSのバージョンを取得する/Tips & Tricks

SourceForge.net: Gecko SDK for Delphi

DelphiでWinSock

SQLite-もげもげ〜

BDS(Delphi/BCB)用SQLiteライブラリ (山本隆の開発日誌)

Application.ProcessMessages

FrontPage - DelphiVIP

SwissDelphiCenter.ch : programming tips

Torry's Delphi Pages

Delphi Tips

Delphi Code Tips

Magic of Delphi4〓z〓[〓〓 〓y〓[〓W

Delphi Win32API/API関数一覧

Delphi〓〓〓Z

クジラ式 Delphi 資料

Delphi〓〓y〓[〓W

サイト移転のお知らせ(Mr.XRAY)

openDelphi.org

KOL and MCKPage

Gen's Delphi Labo.

サイト移転のお知らせ(Mr.XRAY)

ナッキーの「Turbo Delphiはじめて奮戦記」- 第1回 Turbo Delphi のインストール

フリーのTurbo Delphiで始めるWindowsプログラミング:ITpro

フリーのTurbo Delphiで始めるWindowsプログラミング:ITpro

http://torrent.borland.com/turbo_hotfix_rollup.zip

http://torrent.borland.com/prereqs_jp.zip

http://torrent.borland.com/turbodelphi_jp.exe

(1) \dotNETRedist\dotnetfx.exe

(2) \dotNETRedist\langpack.exe

(3) \dotNETRedist\NDP1.1sp1-KB867460-X86.exe

\dotNETSDK\setup.exe

\IE60SP1\ie6setup.exe

\dotNETJSharp\vjredist.exe

\dotNETJSharp\vjredist-このエントリーをはてなブックマークに追加ツイートシェア

アーカイブ ヘルプ
ログイン ユーザー登録
ようこそ ゲスト さん