Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Di Mai 14, 2024 21:05

Foren-Übersicht » Programmierung » Allgemein
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: ChoosePixelFormat erstellt Thread
BeitragVerfasst: Sa Dez 08, 2012 14:36 
Offline
DGL Member
Benutzeravatar

Registriert: Di Apr 29, 2008 18:56
Beiträge: 1213
Programmiersprache: Delphi/FPC
Hey,

ich hab heute festegestellt, das meine Anwendung ein Haufen schalfender Threads hat, also wollte ich da mal bischen aufräumen. Einer der Threads wird von ChoosePixelFormat erstellt und erst freigegeben, wenn die Anwendung beendet wird. Muss das so sein, oder kann man den evlt. auch schon eher wieder freigeben. Wenn ja wie stell ich das dann an?!

MfG & Thx Bergmann.

_________________
Aktuelle Projekte: BumpMapGenerator, Massive Universe Online
Auf meiner Homepage gibt auch noch paar Projekte und Infos von mir.


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Sa Dez 08, 2012 14:41 
Offline
DGL Member
Benutzeravatar

Registriert: Do Sep 02, 2004 19:42
Beiträge: 4158
Programmiersprache: FreePascal, C++
Schlafende Threads kosten dich (fast) nichts. Ein paar kB Speicher eventuell, aber ein schlauer Scheduler wird dadurch nicht signifikant langsamer.

grüße

_________________
If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung.
current projects: ManiacLab; aioxmpp
zombofant networkmy photostream
„Writing code is like writing poetry“ - source unknown


„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Sa Dez 08, 2012 15:04 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Dez 03, 2008 12:01
Beiträge: 167
Wohnort: /country/germany
Programmiersprache: C++ / FreeBASIC
Um hier ein wenig Schleichwerbung zu machen *hust*: Mein Kernel macht das folgendermaßen, er hat eine Liste, in der nur die aktiven Threads liegen. Wenn der Thread also schläft, verliert man da nur die 4kb, die der Thread als Stack bekommen hat, er wird vom Scheduler nicht mal angefasst. Ich denke mal, dass die Scheduler von "großen" Betriebssystemen das ähnlich/besser machen.
Wenn natürlich dein Programm unzählige Threads aufmacht und dass dann Speicher kostet, könnte sich das aufräumen lohnen, wenn es aber irgendwelche Threads sind, die Windows für dich erstellt, kannst und solltest du vermutlich da nicht viel tun.

_________________
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst -- Steve Wozniak


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Sa Dez 08, 2012 15:20 
Offline
DGL Member
Benutzeravatar

Registriert: Do Sep 02, 2004 19:42
Beiträge: 4158
Programmiersprache: FreePascal, C++
@darkinsanity: Wie findest du denn raus, wann schlafende Threads aufwachen? ;)

grüße

_________________
If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung.
current projects: ManiacLab; aioxmpp
zombofant networkmy photostream
„Writing code is like writing poetry“ - source unknown


„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: So Dez 09, 2012 12:42 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Dez 03, 2008 12:01
Beiträge: 167
Wohnort: /country/germany
Programmiersprache: C++ / FreeBASIC
Naja, wenn sie schlafen, warten sie ja auf irgendwas, sei es ein Signal vom Timer oder eine Nachricht von einem anderen Prozess. Wenn so etwas kommt, kommen sie wieder in die aktive Liste.

_________________
Traue keinem Computer, den du nicht aus dem Fenster werfen kannst -- Steve Wozniak


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Di Dez 11, 2012 09:23 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Nov 08, 2010 18:41
Beiträge: 769
Programmiersprache: Gestern
darkinsanity hat geschrieben:
Naja, wenn sie schlafen, warten sie ja auf irgendwas, sei es ein Signal vom Timer oder eine Nachricht von einem anderen Prozess. Wenn so etwas kommt, kommen sie wieder in die aktive Liste.


Genau, deshalb sind sie auch total praktisch fuer so ziehmlich alle IO-Geschichten. Stell dir vor du muesstest wie auf diesen boesen Handheld programmieren und alle 50 Instruktionen ne Pause machen :mrgreen:

_________________
Meine Homepage


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 
Foren-Übersicht » Programmierung » Allgemein


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 7 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.037s | 17 Queries | GZIP : On ]