サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは本日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。
ここまでスレッドのサンプルを書いてきたのですが、主にプログラムがみにくくなるとか、めんどいとか、動くからえぇやんという理由で、やるべきことをやってないところがあります。 スレッドからのSwing操作とwaitの処理です。 Swingはシングルスレッドモデルで実装されているので、GUIスレッドとは別のスレッドからSwingを操作するべきではありません。EventQueue#invokeLaterなどを使って処理をGUIスレッドにのせる必要があります。(SwingUtilities#invokeLaterは内部でEventQueue#invokeLaterを呼び出しているだけです) 今回の一連のサンプルで使っているJTextField#setTextや、今回は使ってないけどよく使うJTextArea#appendなど、JTextComponentのテキスト操作に関しては、幸いスレッドセーフなの
はっきり言って自業自得なのですよ。彼らは。 こう書くと、ひどい人間に思われそうだが、おれ自身が8月まで自動車工場の期間工だったから、はっきり言える。 おれがヤメて2ヶ月くらいして、問題視され始めた。実際おれがいた会社の工場は1000人規模で人員削減だ。 期間工の生活はそんなにひどくないおれの給料は17万〜24万の間だった。 正月とか勤務日数が少ない場合は17万。残業とかが多い場合は24万といった感じだ。 で、このお金は保険とかの他に1ヶ月の食費も引かれている。 寮では朝、夜食事が用意されている。昼は会社で用意されている。 工場とかは150円でうどん、210円でカレーとか食える。もうちょっと高い定食もあるけど。 おれは朝食わない派、昼500円、夜400円くらいの食事をしてた。 大体15,000円くらい食費で引かれていたと思う。 休日はほどんど外食してた。 寮費はタダだった。 つまり、お金を使
<root> <key1>値1</key1> <key2>値2</key2> <key3>値3</key3> <key4>値4</key4> </root> といったXMLファイルに対して、以下のようなコードを書いた。 XDocument xdoc = XDocument.Load("sample.xml"); var query = from pair in xdoc.Root.Elements() select new { Key = pair.Name.ToString(), Value = int.Parse(pair.Value) }; var dict = query.ToDictionary<string,int>( (x => x.Key), (x => x.Value)); foreach (var d in dict) { Console.WriteLine(d.Key
Mac OS X 10.4 Tiger Apple's latest OS X release (10.4) is about to hit the streets. Tiger brings a … Introduction Back in early November of 2003, I introduced my Mac OS X 10.3 Panther review with some concerns about Apple's OS release cycle. It's strange to have gone from years of uncertainty and vaporware to a steady annual supply of major new operating system releases from Apple. But do I really
EventQueue#invokeLaterなどを使えということなのですが、実際の処理をいちいちinvokeLaterすると処理の記述が分断して大変みにくくなります。記述の美しさよりも処理の安全さ、とはいえ、これはあんまり。 ということで、Java SE 6からはSwingWorkerというクラスが用意されていて、便利に使えます。 使い方を図解すると、こう 関係ないけど、今回のサンプルはムダにNimbusです。 SwingWorkerは、Genericsパラメータをふたつ指定します。一つ目が処理結果の型で、二つ目が途中経過の型です。 new SwingWorker<Integer, int[]>() SwingWorkerで実装するべきなのは、doInBackgroundメソッドです。ここでは、別スレッドで動かしたい処理を記述します。戻り値の型は、Genericsで一つ目に指定した型になり
JavaOne TokyoのDay-0、Javaデベロッパにはおなじみの稚内北星学園大学 丸山不二雄氏が提供する「丸山先生レクチャーシリーズ」が開かれた。この最後に「定時退社のためにJava」という一風変わった名前のセッションが開かれ、米Sun Microsystems Technical Stuffの川口耕介氏が、デベロッパはいかにして幸せになるべきか、などについて語った。 川口氏もまた、Javaコミュニティには有名だろう。2005年度未踏ソフトウェア創造事業(いわゆる未踏ユース)において、筧捷彦PMにより川口氏の「スレッド冬眠技術を利用したイベント駆動によらないワークフローエンジンの開発」というプロジェクトが採択されている。また、Hudson、com4j、parse-ipr、parse-dot-classpath、args4jといったオープンソースソフトウェアの開発も行う。parse-
OMakeすごい。OMakeはマジですごい。 OMakeはGNU makeの代替品みたいなものなんだけど、正直なところこのツールの強力さはGNU makeと比べると失礼なくらいすごい。これのおかげで、「コード修正→ビルド→デバッグ→コード修正→・・・」のループの、ビルドにあたる作業がほぼ消え去った。 ファイルの依存関係の解析がとにかくすごい。よくあるユースケースなんかの場合、最小限の手間でほぼ完璧に依存関係を網羅して、よしなにビルドしてくれる。 とりあえず、はやみずが実際に使ってみたケースを例にとってそのすごさの一端を紹介しようと思う。 case study 論より証拠ということで、自分が OMake を試しにつかってみたケースを紹介する。C言語でスタティックライブラリを作っていて、それに加えて簡単なテストプログラムを書いている。 /include/ 以下にヘッダファイルが全部ある /sr
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く