quickrunで即座に終了しないプログラムを動かしてもフリーズしない方法
前回の記事で気になったので。
次の設定を.vimrcに書けばそういうの動かしても大丈夫。
let g:quickrun_config = {'runmode': 'async:vimproc'}
嘘言った。
これでもフリーズしてVimがSEGVした。
1回目はOKだったけど2回目やったらダメで、
Vim再起動してまたやったら1回目からSEGVした。
2回目以内にかならず再現するかはわからない。
vimprocのなんかの限界に達したっぽい感じ(適当すぎる...
きっかけ
そういえばvimproc使えば無限ループ的なプログラムも大丈夫なんだっけ?
と思って:help quickrunして/vimprocとかで探したらこんなん書かれてた。
50 ミリ秒以内に実行が終了 した場合は、即座
に結果を表示します。
50ミリ以内に終了しなかった場合はどうなんだろう。
というか「即座に結果を表示」の意味がどういうことなのかよくわからない。
50ミリ以内なら確かに即座なんじゃないんだろうか...?と思ってしまった。
あとasync:vimprocとasync:remote:vimprocの違いが知りたい。
async:remote:vimprocは+clientserverが必要なようですが、
2つ作った理由がわからない。
まとめ
そんな感じでぐだぐだ言ったので、
id:thincaさんへの質問をまとめるとこんな感じです。暇な時に返事ください。
- 「50ミリ秒以内に〜」の記述の意図がわからない
- :help quickrun-option-runmode のasync:vimprocとasync:remote:vimprocの違いが知りたい