Блокирующие замки против неблокирующих замков
Я думаю здесь: если у вас есть 2 потока, выполняющие операции FAST, которые должны быть синхронизированы, разве неблокирующий подход быстрее / лучше, чем подход блокировки / переключения контекста?
Под неблокирующим я имею в виду что-то вроде:
while (true) {if (checkAndGetTheLock ()) break; }
Единственное, о чем я могу думать, - это голодание (с перегрузкой процессора), если вокруг блокировки слишком много потоков.
Как мне сбалансировать один подход с другим?