Unicode of course takes up more space and fills up your buffer sooner. Looks like the jump happens after 8 chars.
Benchmark.bm do |bench|
run("と", bench)
run("がと", bench)
run("りがと", bench)
run("ありがと", bench)
run("ありがとあ", bench)
run("ありがとあり", bench)
run("ありがとありが", bench)
run("ありがとありがと", bench)
run("ありがとありがとあ", bench)
run("ありがとありがとあり", bench)
run("ありがとありがとありと", bench)
run("ありがとありがとありがと", bench)
end
user system total real
2 chars 0.210000 0.000000 0.210000 ( 0.212420)
3 chars 0.200000 0.000000 0.200000 ( 0.199957)
4 chars 0.200000 0.000000 0.200000 ( 0.199356)
5 chars 0.200000 0.000000 0.200000 ( 0.199142)
6 chars 0.200000 0.000000 0.200000 ( 0.198047)
7 chars 0.190000 0.000000 0.190000 ( 0.198984)
8 chars 0.190000 0.000000 0.190000 ( 0.196917)
9 chars 0.250000 0.000000 0.250000 ( 0.245808)
10 chars 0.240000 0.000000 0.240000 ( 0.247153)
11 chars 0.250000 0.000000 0.250000 ( 0.248083)
12 chars 0.250000 0.000000 0.250000 ( 0.247753)
13 chars 0.240000 0.000000 0.240000 ( 0.250674)
Grabbed those unicode chars from
http://blog.trydionel.com/2010/03/23/some-unicode-tips-for-r... no clue what that says.