2012年10月16日火曜日

since_id再最終版

もうsince_idアルゴリズムは完成したつもりでデバッグというより普通にdashboard潜ってたらover(読み込み済みのpostの最後のidよりおかわりしたJSONの最後のidのほうが新しい現象)がいきなり出てきた。since_idは-=してるので原則short(おかわりしたJSONの最初のidが最後のpostidより古い)がまず起こるはずだが、おかしいなーと調べてたら多分おかわりしたJSONの最後のidと最後のpostidが一緒というケースが発生してる様子。
なのでoverはshortの時に足し過ぎて起こるだけでなく、いきなり出てくることもありうるという前提で、若干コードを書き換えた。
if(lastid<=[[[bd valueForKeyPath:post(@"id")]lastObject]longLongValue]){
NSLog(@"over/match! tid:%lld/sid:%lld/lid:%lld/difid:%lld (brk:%d)",topid,since_id,lastid,difid,brk);
if(difid){since_id-=difid;difid/=brk++;since_id+=difid;}
else since_id-=(topid-[[[bd valueForKeyPath:post(@"id")]lastObject]longLongValue]);
offsinceval=[NSString stringWithFormat:@"%lld",since_id];[self reqDB];
return;
}

できた。これにNSTimerで自動的にぽんぽん次へ次へと行く仕組みを作ってデバッグ。
特に問題は無さそう。10,000件オーバーまで普通に行った。さすがにもー大丈夫だろう。

あとiPhone5用にまたケース買った。5用に3つ目。これ。
フィルムはマイクロソリューションのARSH買おうと思ってたけどぶっちゃけ今のsoftbankのフィルムでそんなに大きい不満はないからなー。3G時代からずーっとパワサポのアンチグレアやったけどこれからはやっぱり光沢系かな。

夜はマッチョで並野菜マシマシにんにくちょびっと背脂ちょいマシカラメ。美味い。

0 件のコメント:

コメントを投稿