встроил раскраску в тест. ну, гигабайт текста красит пятьдесят секунд. грустно. но Есть Нюанс (ц).
большинство времени пользователь сидит и пырит в экран. даже если что-то печатает — всё равно довольно медленно. а мой движок раскраски можно остановить в любой момент, он онлайновый. поэтому пока редактор ожидает от иксов событие — он заодно и красит понемножку; не дольше чем десять миллисекунд за раз.
итого: редактор взлетает сразу как только загрузил файл. небольшие файлы красит почти мгновенно. остальные докрашивает на фоне, при этом отзывчивость не страдает (ну да, я проверил: елозил по тексту, пока оно красило). при этом никаких потоков, и никакой ебли с лочками и синхронизацией (соответственно, файл можно редактировать пока его красят, ничего страшного).
если лень считать: скорость раскрашивания около двадцати мегабайт текста в секунду (это около 200 килобайт в миллисекунду, ага). i3/3.6 GHz, если чо.