2010-01-01から1年間の記事一覧
Rubyで結城浩せんせいのJavaマルチスレッド本 8 # Read-Write Lock 読込中は書かない。 ログファイルのFlushとか、MySQLだとSELECT for UPDATE ってところか。 rubyで書いてみた #!/usr/bin/env ruby require 'thread' # Read Write Lock class ReadWriteLo…
Rubyで結城浩せんせいのJavaマルチスレッド本 7# Producer-and-Consumer Producer-and-Consumer 回転寿司だと思えば楽。作る人、食べる人、カウンターテーブル。が別々に仕事をする。 作るひとはどんどん作り 食べる人がどんどん食べる。 テーブルにお寿司…
Rubyで結城浩せんせいのJavaマルチスレッド本をやってみる試み、その5 Balking Balkinは待たずに、他の仕事を片付けます。一方でGuarded SuspensionはWaitセットで待つ。Balking は先に進みます。 Guarded Suspensionのこんなところが嫌なので、Balkingパタ…
Rubyで結城浩せんせいのJavaマルチスレッド本をやってみる試み、その5 Guarded Suspension Guarded Suspensionはガード条件が満たされるまで while (your_trun?) { wait() } で まつ。 2本スレッドで、キューを使う クライアント:リクエストをキューに置…
Rubyで結城浩せんせいのJavaマルチスレッド本をやってみる試み、その4 Immutable パターン #/usr/bin/envy ruby #Immutable # 壊れない設計 class PrintPersonThread < Thread def initialize person @person = person block = Proc.new{ while true do put…
結城せんせいの「マルチスレッド本」を参考書にし、これをRubyで解釈する。 Rubyもデザインパターンも両方覚えちゃおうという強欲な試み。 Single Threaded Execution 壊れてしまう例 #!/usr/bin/env ruby #Single Threaded Execution #これは壊れる例 requi…
Rubyでマルチスレッドを動かしてみる。 Rubyでスレッドを動かす例 #/usr/bin/env ruby #Threadで動かしてみる puts "スレッドテスト" puts "スレッド作成" t = Thread.new { puts "Thread 開始" sleep 3 puts "Thread 終了" } puts "他スレッド待ち" main_th…
Rubyのスレッド関連Doc Rubyのスレッド関連の情報リンクをまとめてみた。公式Docも添付ライブラリ・標準ライブラリ・コアと3種類あったりして探すのが面倒。 コア スレッド Ruby スレッド Ruby のスレッドの仕様 スレッドと例外 組み込みクラス Thread libra…
xlsx や docx pptx 形式をどうするか。 2003互換形式で保存する。 2007形式を読み書きできるようにする。 既存ファイルを変換する マイクロソフトは、どちらもちゃんと用意している。抜け目ないよな。 俗説に2003形式で保存すればいい そんなことは…
Cookieについて喋ってくれと言われたので、どっかで喋ったとき、事前資料としてまとめたもの。 Cookieはブラウザからサーバーに送信されるデータ形式拡張 WebStorage: 最近ではCookieはWebStorageのようにさらに拡張される傾向にある。 Cookieの制限 4Kも …
Operaで検索を作ろうと思うとちょっと面倒だと思っていた。ところがコレがとても簡単だった。 検索を作りたいボックスで右クリック 検索の作成 出来たモノを保存する。 すると検索で選べるようになる。 POSTが使える。 検索でPOSTをオプションに使えるのが嬉…
DHCPサーバーからIPを取ろうと思ったとき、CentOSではどうするか。DHCP割り当てで使おうとすると、DHCPサーバー構築が表示されて困る。 /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 # ONBOOT=yes # eth0 の場合 BOOTPROTO=dhcp # ... BOOTPROTO…
WordPressの管理画面をプロバイダ制限してください。って言われた。セキュリティー対策のためと言われた、セキュリティー対策ねぇ。HTTPSを買わない時点でどうしようもない。ブログの改ざんより大事なことがある。復旧手順やバックアップ手順が確立してない…
Operaのキーボードショートカット変更してCTRL+HをBackSpaceにしたいと思った。 なぜなら、僕のWindowsのCapsLockをCtrlに仕分けているからだ。 以前。Windowsで、CapsLockをCtrlに置き換えた。 Caps Lockを左Ctrlにする@Windows Vista - ブックマクロ開発…
GNOMEを使って甘えていると、CUIでマウントすら出来なくなる。CUIでNTFSマウントくらい出来た方が良いと思う。NTFSマウントするには カーネルオプションにNTFSサポートが入っている ntfs-3g のモジュールが入っている のいずれが必要。習うより慣れろってこ…
Opera Meeting Up 2010-11-07 でDanielさんに教えて貰った。 douzoyoroさん的なものを世界規模でやってるbug me notニュースを見るときに必要になるアカウントを登録したから共有しておくよってこと。 日本だと日経などがイライラするのでこういうの便利です…
Opera Meeting Up 2010-11-07でDanielさんに教えて貰ったmailtoをGmailで開く方法 Operaの場合 メールはGmailで開きたい。Gmailで開いて使いたい。 mailto をGmailで開きたいですよね。 MailtoをクリックしてOutlookが起動してガッカリは嫌。 設定方法 次の…
Opera Meeting Up 2010-11-07でDanielさんに教えて貰った。CSS media query がCSS3で定義されている。 画面の width が640 以下なら携帯用表示にする。なんてことが可能。いままで、カラム段落ち問題って言ってたのが、解決するんだよ。 なのに、Videoタグだ…
SVGは今後の本命技術になりそうなのでちゃんと勉強したいなと思ってる。HTML5で盛り上がってる方が多いけど、JSの仕様はJavascript APIとして別系統。 新しいCSSはCSS3として定義されているので、純粋なHTML5はVideoタグとSectionタグ? Videoタグはコ…
Operaのスライドショー機能をm61kに教えて貰いました。Operaのスライドショー機能の存在は知ってたけど、まともに動いているのを間近に見たのは初めてでした。Operaにはスライドショー機能がありまして。Styleシートを定義するだけで使える。 JavaScriptもい…
dd の進化版 dd_rescue コマンドを知りました。ddの面倒くさい部分を、自動で処理してくれる優れものです。ddは進化して dd_rescue になりました。 こんなとき便利でした。 容量が違うディスクにdd したいときどうすればいいか検索した時のメモが出てきた。…
``useradd'' または ``adduser'' コマンド?? 2010-10-29追記 Debianに限った場合でした。adduser/useraddに違いがあるのはDebianに限った場合であることを知りました。間違ってました。Fedora/CentOS系では両方は同じコマンドでした。 [root@localhost ~]#…
Googleカレンダの右側にピコって出てくるGoogle Tasks。コレが意外と使いやすい。でも画面が小さくて苦労した。拡大して使ったりDOMノードを切り出してLightBoxに入れて使おうとしてみたり。 アンドロイド版にはGoogleTasks専用画面が用意されているので、WE…
BIOSがコンソールリダイレクションに対応していると、BIOSをSSH経由で見ることが出来る。 仕組み ノートPC ------ホストA ------ホストBのBIOS 設定と実例 BIOSの設定でConsole Redirectionをオンにする。 Advanced □□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□…
DHCPで特定のサーバーにだけ仕事をする方法を検討した。DHCPサーバーが複数あっても、既存DHCPサーバーを止められないとき、新しくルーター挟んで〜も面倒くさい。そりゃね、家にルーターくらい転がってるんだけど、IP空間が変わるとそれはそれでいろいろ面…
圧縮について、調べたら試験運用中なLinux備忘録さんのところのまとめが秀逸だった。 なので、勉強がてらひとつのエントリにまとめて見た。 lzma について lzma 系のツールは bzip よりも圧縮率がよいLZMAアルゴリズムを採用したコマンド群。ただし、XZ Util…
tar コマンドのオプションは覚え方にちょっとコツがあって。 アーカイブ作成 zcvf アーカイブ展開 zxvf で覚える。なんか馴れるまではこの文字列の意味が分からくて詰まりやすい。私もつまりまくり。 z 有無 z はzipのz で覚える、つけるとgzip圧縮される c …
dd コマンドはハードディスク・パーティションを丸ごと取り出します。0/1の信号のママ取り出すらしいです。ddコマンドを使えばデータをそのまま、ディスクを移動させることが出来ます。 dd でディスクからディスクへバックアップ ディスクToディスクでコピー…
Ubuntuでシリアルコンソールを使う方法と違ってinittabを使うので、意外と簡単。 Ubuntuの人もDebianからinittab 持って行ってUpStartを使わなければ動くかもね。 # /etc/inittab: init(8) configuration. # $Id: inittab,v 1.91 2002/01/25 13:35:21 miquel…