Il faut savoir aussi comment gérer l'intégrité de données manipulées par deux processus en parallèle. Autre limite, certaines applications dépendent d'actions séquentielles. Néanmoins, lorsque les scénarios s'y prêtent, les performances sont impressionnantes. Parmi les démonstrations, une simple requête sur une base, écrite en Linq, et qui consommait 25% de la CPU (un quadricoeur), demandait par exemple 10,27 secondes. La même requête en PLinq - donc avec une instruction rendant le code parallèle - consommait 98% de la CPU mais donnait la réponse en seulement 2,11 secondes. Fait notable, les démonstrations étaient réalisées sur Vista : le système lui-même n'est pas spécialement optimisé pour les multi-coeurs, mais une application optimisée parvient tout de même à en tirer parti. Des opportunités à inventer et à saisir pour les développeurs d'applications Si tout n'est pas résolu, les opportunités sont déjà nombreuses, souligne Steve Teixeira. On peut ainsi imaginer de passer à de nouvelles interfaces homme-machine, impensables avant car bien trop gourmandes. On peut aussi imaginer des applications répondant de façon immédiate, reléguant l'irritant sablier aux oubliettes. Et à la fin, la nature du développeur reprendra ses droits : « on pourra ramener le free lunch : une application écrite pour du double-coeur fonctionnera encore mieux avec du quadri-coeur, de l'octo-coeur, etc. »