随分と…分厚いインターバルだ……

今回の冒険の結果

↓ マルチウィンドウだとパフォーマンスが…、なら目には目を、マルチスレッドだ!
↓ Ruby#Fiberに骨抜きの私でもSDL_Threadで楽ちん―――沈痛な面持ちでRubyインタプリタとの断絶の壁を思い知る……。
↓ Oh!Chin-up! Rubyを制するものはやはりRuby! そう、rb_thread_create。でも、同時に実行される(ネイティブ)スレッドはただ一人……!
↓ スレッドセーフに別れを告げ、僕らはrb_thread_call_without_gvl(2)!で(部分)並列実行の旅に出―――これちょっとだけ行き先違いますね…
↓ まだだ、一つ一つは小さな火だが、全部まるっと合わせれば―――
↓ 焼けた焼けた。「のうみそをすいとられた!」

にて、また紙一重でござったなと呟き倒れた。最初の妥協案に戻す面舵の重さたるや……!


rb_thread_call_without_gvl(2)は動作イメージは掴めるんだけど、テストが上手く行かないんだよなー。
どの道、今回の用途には見合わないとはいえ、局所的なら想定される場面(DB処理やらやら)は当然多いわけで、習熟しておきたいだが。
あと、SDL_Threadに関しては要は内部でRubyコールしなきゃ良い訳(それが大問題だが)で、ここ一番のお膳立てさえしてやれば、当然最強である。


適材と適所の知識と選択肢が増えただけでも良しとしたい所だが…、あー、寄り道とその代償については分かってたんだけどなぁ、止められねぇ。
ただ面白いのは、この一連の流れの部分部分に、何処かで見た(読んだ)ような既視感を度々感じる事で、
それは先人であり、または私と大変良く似た見覚えのある私もいるわけで……ハッハッハッ、ハ…。


先人の話でいえば、今悩んでる事の半割くらい調べてみると、星さんやmirichiさんの記事に辿り着く訳で、
これも過去に読んだ経験から、大体アレが引っかかってくれるだろうなって半ば分かって検索してるので、その安心感の素晴らしさたるや。
頂いた知識をそのまま帰すことは出来ない(それは既に相手が持っているものなので)ので、進んだ先の何か返せるものを、積み上げて行きたいものです。
などと言ってる間に、DXRuby1.5.8devリリース、お疲れ様にございます!