SQLite遅いよ、悲しいよ。
id:minghaiさんが、「likeで拾うとボロボロ」とおっしゃったので、やってみた。githubにコードとZaurusで実行したTraceViewのログを置いた。
$ cd /tmp $ git clone git://github.com/androidzaurus/SQLiteTest.git $ cd SQLiteTest $ traceview sqlite-zaurus.trace
6秒とかwwwないわーありえないわーwwwちなみに'a%'で1600レコードくらい引っ張ってきている。おまけに途中でメモリが足りなくなったらしく、GCも動いている。
native_fill_window()が大半を喰ってる。っぅことは、SQLiteそのものが遅いん?本当にそんなに遅いん?と思って、今度はコマンドラインで試してみた。同じくZaurusで。busyboxはARM用にスタティックリンクしたのを使った。Dev ToolsのTerminalで動かした。
real 0m 8.86s user 0m 5.66s sys 0m 0.75s
\(^o^)/