.NET Framework, kvinnligt eller manligt?

Blev idag uppringd av en av mina absolut bästa vänner som jag också betraktar vara min “sensei” på gitarr. Men det var inte det jag tänkte skriva om här utan istället så hade han tydligen läst om att ingen person i världen egentligen kan göra två saker samtidigt utan det handlar helt enkelt om hur snabb jag som person är att byta fokus från det ena till det andra för att ge en illusion om att jag faktiskt gör två eller flera saker på en och samma gång.

Det gjorde så klart, yrkes-skadad som jag är, att jag drog paralleller till operativsystem, .NET Framework och multicore programmering, eller egentligen, flertrådade lösningar som åtminstone på en dator med en ensam en-cores processor egentligen bara simulerar att göra två saker samtidigt. Processorn exekverar bara en tråd i taget och det betraktas idag som en av de absolut mest komplexa och mest respektgivande kompetenserna att vara en hejare på att implementera flertrådade system, alltså applikationer som med hjälp av två eller flera trådar ger illusionen av att fler saker händer samtidigt. Varför är det svårt, jo det gäller att vara försiktig med läsning och skrivning i minnet så att det inte uppstår konstiga beteenden.

Styrkan med multitrådade lösningar är så klart att om datorn helt plötsligt får fler CPU’er, eller vad som sker i dag, flera kärnor, så kommer applikationen att kunna dra nytta av de resurserna och öka sin prestanda, nästan linjärt (i utopin i alla fall).

Jag har förmånen att åka på PDC och där kommer jag att lägga en hel del tid på parallella system och multi-core programmering. En hel del fokus kommer att ligga på Parallel Extensions som är tillägg till .NET Framework 3.5, för närvarande i en CTP, men som kommer att integreras i 4.0 är det sagt. Parallel Extensions ger dig som utvecklare en hel del snygga klasser och statiska metoder som kan användas för att underlätta utveckling av just din applikation för att ta del av flera kärnor och CPU’er. Jag lovar att återkomma med mer information om detta framöver, under tiden kan du titta på en hel del filmer på Channel9 om just Parallel Extensions och andra tekniker.

Men vad har detta att göra med kvinnligt och manligt då, jo, min kamrat berättade att tydligen så var kvinnor mycket bättre än män på att skifta fokus och alltså också bättre på att “göra flera saker samtidigt”, något som min fru kontinuerligt gör mig påmind om.

Så därför påstår jag…

.NET Framework upp till 3.5 – absolut manligt

.NET Framework 4.0 – helt klart kvinnligt