Mercurial > hg > RemoteEditor > REPSessionManager
diff Todo @ 475:af2cf5d37691
dead ended.
author | one |
---|---|
date | Fri, 15 Oct 2010 19:27:49 +0900 |
parents | 596cc0a3beea |
children |
line wrap: on
line diff
--- a/Todo Fri Oct 15 18:03:46 2010 +0900 +++ b/Todo Fri Oct 15 19:27:49 2010 +0900 @@ -2,6 +2,12 @@ でも単純ソートはうまくいかないはず。 +あ、そうか。このアルゴリズムだと、sentListがクリアされないものがいるね。 + +二巡目のack で消すのだろうが... + +あとsortの範囲の問題がやっぱりある。 + Tue Oct 12 10:37:38 JST 2010 やっぱり二周目に割り込んだコマンドが正しくsortされない。 @@ -46,6 +52,8 @@ 他コマンドのackは何もしない o merge 中の自コマンドは、確定させて処理(merge後に送信と同じ) +Ackが来たら確定で良い? + Editor3 Editor2 Editor1 c(eid=3) e(eid=2) a(eid=1) a(eid=1) c(eid=3) e(eid=2) @@ -87,16 +95,22 @@ a(eid=3) c(eid=1) c(eid=1)* e(eid=2) d(eid=3) <- このe,d がsortされない必要があるらしい d(eid=3) ca(eid=1)* a(eid=3)* - aa(eid=3)* d(eid=3) e(eid=2) - e(eid=2) aa(eid=3)* ca(eid=1)* + aa(eid=3)* d(eid=3) e(eid=2) <- a(eid=3)は確定、d(eid=3)は未確定 + e(eid=2) aa(eid=3)* ca(eid=1)* <- Editor1のe(eid=2)は、まだ未確定 e(eid=2)* d(eid=3)* da(eid=3)* ea(eid=2)* - ea(eid=2)* da(eid=3)* + ea(eid=2)* da(eid=3)* <- e(eid=2)を確定 [c,a,e,d] [c,a,e,d] [c,a,e,d] e(eid=2) は d(eid=3) を追い越す必要がある。 +他のエディタのコマンドが来た時に、優先順位でいきなりソート(merge)して良い。o +既に他のコマンドを送信した後に、自コマンドが来たら、その前までの自編集以外の編集まで確定。o +自コマンドのackで、まだ確定してない場合は確定。o +他コマンドのackは 二周目のackが来たら、そのコマンドまで確定 +merge 中の自コマンドは、確定させて処理(merge後に送信と同じ) + Editor1 Editor2 Editor3 c(eid=1) a(eid=3) a(eid=3) c(eid=1)