1 Windows programmering Programmering med Threads Borland C++ Builder 4 Modsoft Ab Kent Westerholm.

Slides:



Advertisements
Liknande presentationer
Föreläsning 9 Programmeringsteknik och Matlab 2D1312/2D1305
Advertisements

Avlusning Debugger (”avlusare”) Breakpoints Watch.
1 Windows programmering (2) Borland C++ Builder 4/5 Modsoft Ab Kent Westerholm.
Anders Sjögren Lagringsklasser •en variabel i C har två attribut –type( int, float, char..... ) –lagringsklass( auto, extern, register, static ) •lagringsklassens.
Klasser och objekt.
”Ett sätt att distribuera Business Objects via webben”
Funktioner och programorganisation
Föreläsning 3 Repetition Operatorer Styrstrukturer Deklaration och anrop av metoder.
Föreläsning 4 Python: mera om funktioner och parametrar
Arv.
Abstract & sealed.
Inkapsling.
Objektorienterad tänkande
Polymorfism.
Att programmera i språket Java
Föreläsning 6 Referenser Objekt som parametrar public/private Klassvariabler och klassmetoder.
Alice in Action with Java
i olika programmeringsspråk
Programmering i C# 2. Inledande detaljer.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 7 ( ) INNEHÅLL: -Klasser och instansvariabler -Tabeller av klassobjekt.
Objektorienterad programmering i Java
OOP F4:1 Marie Olsson OOP Objekt-orienterad programmering Föreläsning 4 Metoder klass-metoder instans-metoder.
Programmering i C# 3. Klasser.
PROCESSPROGRAMMERING
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 6 ( ) INNEHÅLL: -Mera om tabeller.
Klasser och objekt Klasser, objekt och instansvariabler
Jonny Karlsson PROCESSPROGRAMMERING Föreläsning 4 ( )‏ Innehåll:Trådsäkerhet - Intrinsic locks och synkronisering - Synchronized statements.
int res2=Math.max(tal1,tal2);
Vektorer (klassen Vector) Sortering
Jonny Karlsson PROCESSPROGRAMMERING Föreläsning 8 ( ) Innehåll: Trådprogrammering i Java - Avbrott (”interrupts”) - Metoden join() -
Polymorfism.
Räckvidd och synlighet. Abelli, B. (2004). Programmeringens Grunder – med exempel i C#. Lund: Studentlitteratur 22 Synlighet (meddelandesändning) Det.
Programmering i C# 5. Structer.
Programmeringsteknik för Media1 & K1
William Sandqvist C:s minnesmodell.
1. En infrastruktur för programutveckling
PROCESSPROGRAMMERING Föreläsning ‏ Innehåll: Högnivå objekt för trådprogrammering: - Trådgrupper (”Thread pools”)‏ - Exekverare (Executor.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 3 ( ) INNEHÅLL: -Jämförelseoperatorer -Villkorssatser -Logiska operatorer.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 3 ( ) INNEHÅLL: -Jämförelseoperatorer -Villkorssatser -Logiska operatorer.
Windows programmering
PROCESSPROGRAMMERING Föreläsning ‏ Innehåll: Trådsäkerhet - Memory consitency error - Guarded blocks - Lock Objects - Immutable Objects -
Anders Sjögren Pekare. Anders Sjögren Skapa ett program som byter plats på två heltal Pekare.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 8 ( ) INNEHÅLL:Klasser: -Konstruktorer -Klassvariabler -Instansmetoder -Privata.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 7 ( ) INNEHÅLL: -Metoder -Lokala variabler -Mera om klasser: -Nyckelorden.
1 Föreläsning 6 Programmeringsteknik och Matlab 2D1312/2D1305 Metoder & parametrar Array API och klassen ArrayList.
INTRODUKTION TILL PROGRAMMERING
Föreläsning 9 Gränssnitt. Super Super kan användas till anrop av en omdefinierad metod Super kan användas till anrop av konstruktorer i superklassen Super.
Föreläsning 4 Klasser Och Objekt.
ITK:P1 Föreläsning 2 Introduktion till objektorientering DSV Marie Olsson.
PROCESSPROGRAMMERING Föreläsning 1 ( )‏ Innehåll: Introduktion till paralellprogrammering (“concurrent programming”)‏ Introduktion till parallellprogrammering.
Programmering i C# Laborationer.
7. Delegerare och notifierare
Föreläsning 17 Repetition. Källkodsformat Unicode används åäöμψζ tillåtna i namn på identifierare Inte alla miljöer klarar av det Källkod Bytekod Java.
Jonny Karlsson PROCESSPROGRAMMERING Föreläsning 2 ( )‏ Innehåll:Trådar: - Avbrott (”interrupts”)‏ - Metoden join()‏ Högnivå objekt för.
OOP F5:1 Stefan Möller OOP Objekt-orienterad programmering Föreläsning 5 Klasser och objekt Skapa objekt - new Referenser Konstruktorer Inkapsling.
Programmeringsteknik för K och Media
Jonny Karlsson PROCESSPROGRAMMERING Föreläsning 8 ( ) Innehåll: -Exekveringstrådar.
OOP&M - teori1 OOP del III–vecka 15 Mer NetBeans MouseEvent Graphics Threads TIJ Chapter 14 Menus sid Drawing File Dialogs
OOP&M - teori1 OOP&M – Föreläsning 5 kap 8-13 Operatorer,typkonvertering, booleska operatorer, if och else.
1 Föreläsning 6 Repetition på metoder Referenser Objekt som parametrar public/private Klassvariabler och klassmetoder.
Chapter 11: Exception Handling F Exceptions and Exception Types F Claiming Exceptions F Throwing Exceptions F Catching Exceptions F Creating Your Own Exception.
Program indata ? utdata 1/20 Vahid Mosavat, Nada, KTH.
1 Föreläsning 4 Metoder & parametrar Array API och klassen ArrayList.
OOP&M - teori1 OOP del II– Föreläsning 2 vecka 46 Konstruktorer Instansmetoder Kapitel 14 i kursboken.
OOP&M - teori1 OOPM del II – Föreläsning vecka Abstrakta klasser/metoder igen Gränssnitt/Interface klasser igen tillämpat.
Föreläsning 3 Väsentliga delar i ett Javaprogram Input i paketet extra
Anders Sjögren Programmering i ANSI-C Ett första program för att se vart vi ska...
1 Mer om metoder, variabler, klasser och objekt. Kursboken: - Kapitel 6 - Kapitel 8.
Händelser i ActionScript
RMI Av: Josefina & Sarah DS04.
Presentationens avskrift:

1 Windows programmering Programmering med Threads Borland C++ Builder 4 Modsoft Ab Kent Westerholm

2 Threads En Thread är en del av programmet som utförs oberoende av resten av programmet En Thread tilldelas CPU-tid av operativ- systemet på basis av prioritet En Thread kan ha tillgång till programmets globala variabler och objekt

3 C++ Builder och Threads C++ Builder erbjuder klassen TThread för programmering med Threads Klassen TThread används inte som sådan utan vi härleder egna Threadklasser I C++ Builder skapar vi vår nya Threadklass med File | New | Thread Object

4 TThread - Metoder (Methods) Execute, innehåller den programkod som Threaden skall utföra. Resume, startar exekveringen av en Thread som blivit avbruten med Suspend. Suspend, avbryter exekveringen av en Thread. Kan startas på nytt ned Resume.

5 TThread - Metoder (Methods) Synchronize, används för att anropa metoder i VCL komponenter. Garanterar att endast en Thread i gången har access till VCL komponenten. Terminate, används då vi vill stoppa en Thread. Observera att Execute metoden måste checka Terminated.

6 TThread - Egenskaper (Properties) FreeOnTerminate, sätts till true om vi vill att ett Thread objekts minne automatiskt skall frigöras då exekveringen avslutas. Standardvärde är false. Priority, anger Threadens prioritet. En Thread med högre prioritet får mera processortid en med lägre prioritet. För hög prioritet kan hindra andra Threadar från att utföras.

7 TThread - Egenskaper (Properties) Terminated, om värdet är true har Threaden erhållit en begäran om att den skall sluta exekvera. Observera att det Threaden själv som bestämmer om det faktiskt slutar. Execute metoden bör alltså regelbundet checka Terminate.

8 TThread - Händelser (Events) OnTerminate, genereras då Execute metoden avslutats. Kan användas t.ex. för att frigöra Thread objektets minne. Händelsehanterare: void __fastcall TMyThread::Terminate(TObject *Sender)