Delphi-Forum.de Delphi-Library.de
C-Sharp-Forum.de C-Sharp-Library.de
Registrieren Login Suche Hilfe Sitemap
Thread-Programmierung unter Windows mit Delphi
spacer
Autor Nachricht
Luckie
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic starofftopic star

Beiträge: 11066
Erhaltene Danke: 2
Dabei seit: 30.08.2002


WindowsXP Professional SP2
BDS2006, VS C++ Express, Eclipse (Java), Flex (Flash, AS)
BeitragVerfasst: So 21.09.03 14:49  Antworten mit Zitat Beitrag melden
Thread Programmierung unter Windows mit Delphi

Aus dem Inhalt
  • Grundlagen (einen Threader zeugen/abspalten. Einen Thread beenden.)
  • Steuerung von Threads (Anhalten/Fortsetzen)
  • Threadprioritäten (Prozess-Prioritäten, Thread-Prioritäten, Programmieren von Prioritäten)
  • Synchronisation von Threads (atomarerVariablenzugriff, KritischeAbschnitte)
  • Der Stack eines Threads - neu in Version vom 2008-04-02
  • Threadpools - neu in Version vom 2008-04-02
  • Pseudo-Threads(Fibers) - neu in Version vom 2008-04-02
  • Das VCL-Thread-OBjekt


Homepage: delphitutorials.michael-puff.de
Einloggen, um Attachments anzusehen!
_________________
Gruß Michael


Zuletzt bearbeitet von Luckie am Mi 02.04.08 11:34, insgesamt 4-mal bearbeitet
Private Nachricht sendenPosting in privater Nachricht zitieren Webseite dieses Mitglieds besuchen
G-man
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star

Beiträge: 258
Dabei seit: 01.04.2003
Wohnort: Berlin

Win 2000, Win ME, SuSE 8.2
D5 Standard, D6 Professional
BeitragVerfasst: Di 23.09.03 15:31  Antworten mit Zitat Beitrag melden
Gutes Tutorial, hat mich weiter gebracht...

_________________
...To err is human, but to really foul things up requires a computer.
Private Nachricht sendenPosting in privater Nachricht zitieren
Luckie
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic starofftopic star

(Threadstarter)

Beiträge: 11066
Erhaltene Danke: 2
Dabei seit: 30.08.2002


WindowsXP Professional SP2
BDS2006, VS C++ Express, Eclipse (Java), Flex (Flash, AS)
BeitragVerfasst: Di 23.09.03 15:53  Antworten mit Zitat Beitrag melden
Danke. In der nächsten Version werden ein paar dieser fürchterlichen Dreckfuhler eleminiert sein. :roll:

_________________
Gruß Michael
Private Nachricht sendenPosting in privater Nachricht zitieren Webseite dieses Mitglieds besuchen
focus
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star

Beiträge: 187
Dabei seit: 26.03.2003
Wohnort: Erlangen, BY

XP, 2k, 98, Me
D6 Prof
BeitragVerfasst: Do 25.09.03 16:16  Antworten mit Zitat Beitrag melden
TOP...Luckie weiter so
-super übersichtlich
-gute beispiele
-lerneffekt nonvcl + threads
=>klasse tut
gruss
michael
Private Nachricht sendenPosting in privater Nachricht zitieren
Luckie
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic starofftopic star

(Threadstarter)

Beiträge: 11066
Erhaltene Danke: 2
Dabei seit: 30.08.2002


WindowsXP Professional SP2
BDS2006, VS C++ Express, Eclipse (Java), Flex (Flash, AS)
BeitragVerfasst: Mo 03.11.03 10:14  Antworten mit Zitat Beitrag melden
So, ich darf euch eine überarbeitet Fassung meines Threading Tutorials präsentieren. Es wurde grundlegend überarbeitet und ergänzt mit ein paar Worten zum dem VCL Thread-Objekt.

aus dem Inhalt:
– Grundlagen der Thread Programmierung
– Thread-Ablaufsteuerung
– Thread-Prioritäten
– Thread-Synchronisation
– Das Thread Objekt der VCL

Demos:
- CriticalSection
- InterLockedExchangeAdd
- Priority
- SpinLock
- ThreadTimes
- TThreadObject

Es ist jetzt insgesamt 33 Seiten stark.

Hier die Links:
Thread Tutorial Hauptseite

_________________
Gruß Michael


Zuletzt bearbeitet von Luckie am Mo 02.08.04 21:59, insgesamt 4-mal bearbeitet
Private Nachricht sendenPosting in privater Nachricht zitieren Webseite dieses Mitglieds besuchen
Udontknow
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic star

Beiträge: 2594
Dabei seit: 12.06.2002


WIN2000, WIN XP
D2006 WIN32
BeitragVerfasst: Mo 03.11.03 11:26  Antworten mit Zitat Beitrag melden
Hallo!

Respekt, Luckie, das ist ja wirklich übersichtlich und verständlich! :)

Du solltest unbedingt aber auch noch die Waitfor-Methode erläutern. Das ist z.B. bei dem Bestücken von DirectSound-Buffers für MP3-Wiedergabe sehr wichtig.

Cu,
Udontknow
Private Nachricht sendenPosting in privater Nachricht zitieren
G-man
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star

Beiträge: 258
Dabei seit: 01.04.2003
Wohnort: Berlin

Win 2000, Win ME, SuSE 8.2
D5 Standard, D6 Professional
BeitragVerfasst: Di 04.11.03 17:57  Antworten mit Zitat Beitrag melden
Und es wird wirklich immer besser...

_________________
...To err is human, but to really foul things up requires a computer.
Private Nachricht sendenPosting in privater Nachricht zitieren
Luckie
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic starofftopic star

(Threadstarter)

Beiträge: 11066
Erhaltene Danke: 2
Dabei seit: 30.08.2002


WindowsXP Professional SP2
BDS2006, VS C++ Express, Eclipse (Java), Flex (Flash, AS)
BeitragVerfasst: Di 04.11.03 18:15  Antworten mit Zitat Beitrag melden
G-man hat folgendes geschrieben:
Und es wird wirklich immer besser...

Danke, so soll es auch sein.

_________________
Gruß Michael
Private Nachricht sendenPosting in privater Nachricht zitieren Webseite dieses Mitglieds besuchen
Lhid
ontopic starontopic starontopic starhalf ontopic starhalf offtopic starofftopic starofftopic starofftopic starofftopic star

Beiträge: 831
Dabei seit: 30.05.2003



BeitragVerfasst: Mo 10.11.03 23:31  Antworten mit Zitat Beitrag melden
Mich und bitte alle meine Beiträge löschen. Habe mich und meine Meinung stark verändert


Zuletzt bearbeitet von Lhid am Di 20.10.09 16:37, insgesamt 1-mal bearbeitet
Private Nachricht sendenPosting in privater Nachricht zitieren
UC-Chewie
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star

Beiträge: 531
Dabei seit: 30.06.2003


WinXP
D5 Ent
BeitragVerfasst: Mo 10.11.03 23:59  Antworten mit Zitat Beitrag melden
Bei mir gehts einwandfrei.

_________________
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
Private Nachricht sendenPosting in privater Nachricht zitieren
Luckie
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic starofftopic star

(Threadstarter)

Beiträge: 11066
Erhaltene Danke: 2
Dabei seit: 30.08.2002


WindowsXP Professional SP2
BDS2006, VS C++ Express, Eclipse (Java), Flex (Flash, AS)
BeitragVerfasst: Di 11.11.03 11:34  Antworten mit Zitat Beitrag melden
@Chewie: Es konnte bei dir nicht gehen, die direkten Links waren fehlerhaft. Aber du warst wahrscheinlich so clever und bist dem Link zur Tutorialseite gefolgt. :wink:

_________________
Gruß Michael
Private Nachricht sendenPosting in privater Nachricht zitieren Webseite dieses Mitglieds besuchen
UC-Chewie
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star

Beiträge: 531
Dabei seit: 30.06.2003


WinXP
D5 Ent
BeitragVerfasst: Di 11.11.03 15:46  Antworten mit Zitat Beitrag melden
Hm, könntest recht haben :wink:

_________________
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
Private Nachricht sendenPosting in privater Nachricht zitieren
Sebastian01
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star

Beiträge: 23
Dabei seit: 29.10.2003


Windows XP
D7
BeitragVerfasst: Di 18.11.03 13:10  Antworten mit Zitat Beitrag melden
rieeesssiggg - DANKE !

:mrgreen: :mrgreen: :mrgreen: :mrgreen:
Private Nachricht sendenPosting in privater Nachricht zitieren
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star

Beiträge: 11102
Erhaltene Danke: 41
Dabei seit: 22.10.2003
Wohnort: Erde (Milch- straße) ;-), ok, ok: Berlin

(XP), Vista Business, W7 (Chrome, Op10, IE8)
D2006 Pro, Java (Eclipse), C++, C# (VS 2008 Prof), Lazarus
BeitragVerfasst: Mo 05.01.04 14:17 
Titel: Link
Antworten mit Zitat Beitrag melden
Hallo!

Das Tutorial ist echt super!

Es wär nur schön, wenn Du den Link am Anfang dieses Threads korrigieren würdest. :D (Da steht unter "Download des Tutorials" thread_tutorial.zip statt threads_tutorial.zip :cry: )

Das wäre dann etwas einfacher, als auf der HP danach zu suchen, auch wenn es da leicht zu finden ist!

MfG,
S.J.

_________________
Alle meine Projekte ruhen derzeit und bis auf weiteres aus beruflichen Gründen!
Private Nachricht sendenPosting in privater Nachricht zitieren Webseite dieses Mitglieds besuchen
cbs
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic star

Beiträge: 207
Erhaltene Danke: 1
Dabei seit: 12.06.2002



BeitragVerfasst: Sa 31.07.04 11:44  Antworten mit Zitat Beitrag melden
hallo Luckie

dein tut ist erste sahne! viele infos und dazu noch verständlich verpackt. respekt!

ich hab aber leider doch eine frage zur Synchronize funktion:

du schreibst im tut:

Zitat:
Wichtig ist, so lange die zugehörige Synchronize Methode aus dem Haupt-VCL-Thread ausgeführt wird, steht der
Thread. Um nun zu verhindern, dass es zu Performance-Einbußen kommt, sollten die Synchronisations methoden so
kurz wie möglich gehalten werden.


ist damit "nur" die reine Synchronize Methode gemeint oder auch die Methoden die die Synchronize Methode aufruft?

spich: wird der thread direkt nach dem beenden der Synchronize Methode weiter ausgeführt (also ist es dem thread quasi egal das

Form1.UpdateLVCaption(FIndex, FCount);

noch abgearbeitet werden muss) oder wartet der thread bis die letzte anweisung von

ausblenden Delphi-Quelltext markieren
1:
2:
3:
4:
5:
6:
procedure TForm1.UpdateLVCaption(Index, Count: Integer);
begin
  Listview1.Items[Index].SubItems[0] := 'Position: ' + IntToStr(Count);
  if Count = 10000 then
    Listview1.Items[Index].SubItems[0] := 'fertig';
end;


ausgeführt wurde?!

danke schon mal für eine antwort

mfg

cbs
Private Nachricht sendenPosting in privater Nachricht zitieren
Udontknow
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic star

Beiträge: 2594
Dabei seit: 12.06.2002


WIN2000, WIN XP
D2006 WIN32
BeitragVerfasst: Sa 31.07.04 14:35  Antworten mit Zitat Beitrag melden
Der Thread wartet, während der VCL-Haupt-Thread die per Synchronize übergebene Methode vollständig ausgeführt hat, das impliziert dann natürlich auch alle anderen Aufrufe, die in dieser Methode vorkommen.

Cu,
Udontknow
Private Nachricht sendenPosting in privater Nachricht zitieren
cbs
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic star

Beiträge: 207
Erhaltene Danke: 1
Dabei seit: 12.06.2002



BeitragVerfasst: Sa 31.07.04 15:01  Antworten mit Zitat Beitrag melden
alles klar Udontknow danke dir!
Private Nachricht sendenPosting in privater Nachricht zitieren
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic starofftopic star
Nussknacker 2009 - 1. Rang

Beiträge: 8014
Erhaltene Danke: 15
Dabei seit: 16.07.2004
Wohnort: Jahnsdorf

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, L0.9\FPC2.0
BeitragVerfasst: Mo 02.08.04 20:52  Antworten mit Zitat Beitrag melden
Die angegebenen Links funzen bei mir nicht. Meldet mir nur ne 404 (File not found).

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
Private Nachricht sendenPosting in privater Nachricht zitieren Webseite dieses Mitglieds besuchen
Luckie
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic starofftopic star

(Threadstarter)

Beiträge: 11066
Erhaltene Danke: 2
Dabei seit: 30.08.2002


WindowsXP Professional SP2
BDS2006, VS C++ Express, Eclipse (Java), Flex (Flash, AS)
BeitragVerfasst: Mo 02.08.04 22:00  Antworten mit Zitat Beitrag melden
So jetzt geht es.

_________________
Gruß Michael
Private Nachricht sendenPosting in privater Nachricht zitieren Webseite dieses Mitglieds besuchen
Luckie
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic starofftopic star

(Threadstarter)

Beiträge: 11066
Erhaltene Danke: 2
Dabei seit: 30.08.2002


WindowsXP Professional SP2
BDS2006, VS C++ Express, Eclipse (Java), Flex (Flash, AS)
BeitragVerfasst: Do 30.09.04 02:26  Antworten mit Zitat Beitrag melden
Ich habe das Threading Tutorial für Delphi erweitert und überarbeitet. Aus dem Inhalt:

  • Grundlagen der Thread Programmierung (BeginThread, ...)
  • Thread-Ablaufsteuerung (ResumeThread, SuspendThread)
  • Thread-Prioritäten (SetPriorityClass, SetThreadPriority, ...)
  • Thread-Synchronisation (CriticalSections, InterLockedExchangeXXX, ...)
  • Thread-Synchronisation mit Kernelobjekten (neu in 2.2) (WaitForXXX, CreateEvent, SetEvent)
  • Das Thread Objekt der VCL

Zu jedem Kapitel sind ein oder mehrer Demos im Zip-Archiv mitenthalten.

Downloadlink: tutorials.luckie-online.de

Fragen, Anregungen und Probleme könne entweder hier oder in meinem Support-Forum gestellt werden.

_________________
Gruß Michael
Private Nachricht sendenPosting in privater Nachricht zitieren Webseite dieses Mitglieds besuchen
Werbung ausblenden? Dann registriere Dich kostenlos. Weitere Gründe für eine Registrierung.


Werbung ausblenden? Dann registriere Dich kostenlos. Weitere Gründe für eine Registrierung.
Beiträge vom vorherigen Thema anzeigen:   
home home