Seite 1 von 1

wie baute man einen prozess auf

Verfasst: 17.02.2006 01:25
von kaitec
ALLGEIMENE frage:

Wie ist ein Prozess auf gebaut...?
Wie wird der Speicher zugesichert...?
Wie kann man mit PureBasic einen Prozess beenden...?

Wäre schön wenn ihr mir helfen könnte

MfG

Re: wie baute man einen prozess auf

Verfasst: 17.02.2006 10:24
von Kiffi
> ALLGEIMENE frage:

schau Dir mal die Thread-Befehle in der Hilfe an:

Code: Alles auswählen

CreateThread()
KillThread()
PauseThread()
ResumeThread()
ThreadPriority()
WaitThread()
Grüße ... Kiffi

Verfasst: 17.02.2006 12:17
von PAMKKKKK
Erstmal zur Begriffs definition:
Jedes Programm (*.exe) das du Startest ist ein Prozess !
Threads sind Child-Prozesse dieses Programms und völlig anders zu handhaben.

Ein Prozess (also dein Programm) bekommt von einem 32Bit Betriebsystem bei seinem start 4GB (Virtuelles) Ram zugeteilt. In diesem 4GB großen Käfig kann das Programm sich austoben.

Nun läuft in einem Programm immer nur ein Handlungsstrang, der brav von unten nach oben abgearbeitet wird.

Code: Alles auswählen

Prozess
|
|
|
|
|
Ende
Möchte man das mehre Sachen "gleichzeitig" behandelt werden kann der Prozess Threads (Childs) aufmachen, die Paralel zum Prozess laufen. Diese Threads nutzen die Recourcen (den Speicher) des Prozesses (Parent).

Code: Alles auswählen

Prozess
|
|-----------Thread
|-Thread         |
|      |         |
|      |         |
--------Ende-------         (Endet der Prozess so enden auch die Threads!)
Da nun beide auf denselben Speicher zugreifen, kann es sein das sie im selben Augenblick auf die selbe Speicherzelle (Variable) zugreifen wollen. Und schon kracht es !!!! (Absturz, oder Falsches ergebnis)
Deshalb muss man die zugriffe von Threads sehr genau Proggen (das Programm Thread sicher machen)!!
Das macht man mit einem so genannten Mutex (ein Objekt das die Zugriffe steuert).

PB 3.9x ist noch nicht sehr Threadsicher, wenn man einiges beachtet kann man Threads auch hier nutzen.

Erst PB 4.xx soll von sich aus Threadsicher sein.

Kiffi hat dir unterstellt das du Threads meinst.

Einen Prozess Killt man:
http://forums.purebasic.com/german/view ... highlight=