Цитата Сообщение от ZXMAK Посмотреть сообщение
На одном ядре тоже отлично работает. В режиме vblank sync, сканлиния проверяется в цикле из потока эмуляции. Т.е. пока обрабатывается фрейм, scanline не проверяется. Пробовал из отдельного потока проверять, но такой вариант работает плохо, т.к. проверка съедает слишком много процессорного времени, не остается на полезную работу. Если вставить Sleep, то начинаются пропуски, т.к. система не успевает отдать процессор назад во время прохождения vblank. Умный Sleep (в зависимости от текущей scanline) ситуацию улучшает, но не в достаточной мере - пропуски всеравно появляются, хоть и реже.
Что-то не сходится.

Представим одноядерный комп:
Если у тебя приоритет эмуля высокий, то сканирования линии развертки 'втупую' тут же посадит быстродействие всей системы. Если же приоритет эмуля низкий, то любые фоновые процессы с более высоким приоритетом тут же собьют твою синхронизацию.