Bloqueios de bloqueios versus bloqueios sem bloqueio
Estou pensando aqui: se você tem 2 threads executando operações FAST que precisam ser sincronizadas, uma abordagem sem bloqueio não é mais rápida / melhor do que uma abordagem de troca de contexto / bloqueio?
Por não bloquear, quero dizer algo como:
while (true) {if (checkAndGetTheLock ()) break; }
A única coisa em que consigo pensar é a inanição (com a CPU esgotada) se você tiver muitos threads em loop ao redor da fechadur
Como equilibrar uma abordagem com a outra?