Innføring i programmering med C++/CLI

Beskrivelse: Beskrivelse: Beskrivelse: Beskrivelse: Beskrivelse: Beskrivelse: Beskrivelse: Beskrivelse: Beskrivelse: M:\html\Innføring CPP\

 

Om parallellprogrammering

Tidligere hadde en PC alltid bare en prosessor. I dag har nye datamaskiner to eller

fire kjerner (Cores) og antall kjerner vil øke i tiden som kommer.

 

Kjernen er den delen av prosessor som kan utføre instruksjoner. Flere kjerner medfører

at datamaskiner kan kjøre flere tråder samtidig, noe som øker hastigheten til maskinen.

 

Men skal et program trekke nytte av flere kjerner må vi benytte parallellprogrammering.

 

En generell innføring om parallellprogrammering kan du lese om på linken

 

Parallel Computing

 

Visual Studio 2015 og .NET Framework gir støtte for parallellprogrammering.

Dette kan du lese mer om på linken

 

Parallel Programming in the .NET Framework

 

Concurrency Runtime Programming Framework for C++ er et hjelpemiddel

for parallellprogrammering. Dette kan du lese mer om på linken

 

Concurrency Runtime

 

Om programmering med tråder

Et program laget i C++ danner en primærtråd. Denne primærtråden kan igjen starte nye tråder.

Disse trådene vil kjøre parallelt og konkurrere om tid i prosessor.

 

En grunn til å bruke flere tråder i et program er at det kan være flere ulike aktiviteter

som foregår samtidig i programmet. En eller flere av disse aktivitetene kan iblant stoppe opp,

for eksempel ved venting på input fra bruker. Det kan da være greit at de andre aktivitetene

uavhengig kan arbeide med sitt. Dette vil de gjøre om de er egne tråder.

 

Når vi lager et program vil det kjøre som en primærtråd på datamaskinen.

Ønsker vi flere tråder i programmet må vi lage disse.

 

Thread class i namespace System::Threading benyttes til å lage tråder.

 

Link til Thread class i hjelpesystemet

 

Programeksempel

Programeksempel som viser hvordan lage en tråd

 

Linker til sider om tråder i hjelpesystemet

I hjelpesystemet er det mye informasjon og tips om tråder

 

Link til informasjon om bruk av tråder

 

Oversikt over klasser som benyttes til synkronisering

 

Guide til når og hvordan bruke tråder

 


Einar Krogh

Sist endret: 12. desember 2015