
Visto ser um processo complicado de abordar pelos novos produtores, a Microsoft anunciou que irá facilitar ainda mais a implementação de multithreading, com a disponibilização de um novo SDK(Kit de Software de desenvolvimento) para a Xbox 360.
Pete Isensee da Microsoft, detalhou as funcionalidades desta nova biblioteca durante a passada Game Connect. Para colocar em termos mais simples, o XMCore irá facilitar a "programação livre de Locks" aos produtores. Então o que vem a ser a "programação livre de Locks"?
Apesar de existirem várias maneiras de abordar o multithreading, a Microsoft recomenda um método denominado de "message-based concurrency" (concorrência baseada em mensagens). Através da concorrência baseada em mensagens, cada thread (processo a decorrer) é dono dos seus dados, por oposição a todos os threads acederem de forma comum a poços de dados.
Eles enviam, assim, bocados de informação entre eles. O problema é, de maneira a escrever um bocado de dados, um thread tem de fazer Lock (bloqueio) aos seus dados, para prevenir que outros threads acedam a estes enquanto a escrita está a ser efectuada.
Gerir Locks de dados pode ser uma grande dor de cabeça para um produtor, e, apesar dos benefícios de performance e escalabilidade da concorrência baseada em mensagens, é algo demasiado traiçoeiro e moroso para implementar. De acordo com Isensee, é muito fácil de errar no processo. Através da nova biblioteca, XMCore, os locks já não deverão ser uma barreira na Xbox 360, o que permitirá código (e consequentemente jogos) mais ambiciosos.
Se tudo correr bem, é intenção trazer o XMCore para o ambiente Windows.