PB 4.50 Thread Problem

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
alen
Beiträge: 107
Registriert: 09.04.2007 17:38
Computerausstattung: Main Hardware: AMD Ryzen 5 1600 - 6 Core / Gigabyte B450 Aorus Pro / Sapphire RX580 8GB
PB 5.61 and earlier @ Manjaro Linux XFCE x64/ Fedora Linux Cinnamon x64 / Windows 10 x64 on various Hardware Platforms
Wohnort: Duisburg
Kontaktdaten:

PB 4.50 Thread Problem

Beitrag von alen »

Hallo Zusammen,

ich habe da ein Problem mit dieser Routine unter PB 4.50. Mit dem Stück Code möchte ich eigentlich einem neuen Thread einen String bzw. eine Pointeradresse zu einem String mitgeben.

Code: Alles auswählen

Procedure MachWatt(*dbfnID)
  For i = 1 To 5
    Delay(1000)
    Debug Str(i) + " -- " + PeekS(*dbfnID)
  Next
EndProcedure

db_filename.S = GetCurrentDirectory() + "my_music.sqlite"

*dbfnID = AllocateMemory(Len(db_filename))
PokeS(*dbfnID, db_filename)

TID = CreateThread(@MachWatt(), *dbfnID)
;MachWatt(*dbfnID)

FreeMemory(*dbfnID)

Wenn ich das ganze einfach nur mit:

Code: Alles auswählen

MachWatt(*dbfnID)
aufrufe mache klappt es.

Versuche ich den Aufruf mit:

Code: Alles auswählen

TID = CreateThread(@MachWatt(), *dbfnID)
geht das in die Hose.

Was mache ich hier falsch ? Das hatte bisher immer gut funktioniert.

Grüße
Alen
---
Main Hardware: AMD Ryzen 5 1600 - 6 Core / Asus B350M-A / Nvidia GTX650
PB 5.61 and earlier @ Manjaro Linux XFCE x64/ Fedora Linux Cinnamon x64 / Windows 10 x64
on various Hardware Platforms (Notebook and Desktop)
a14xerus
Beiträge: 1440
Registriert: 14.12.2005 15:51
Wohnort: Aachen

Re: PB 4.50 Thread Problem

Beitrag von a14xerus »

tja du startest den thread und löscht dann den speicher
der thread läuft nebenher und greift auf den gelöschten speicher zu.
Benutzeravatar
alen
Beiträge: 107
Registriert: 09.04.2007 17:38
Computerausstattung: Main Hardware: AMD Ryzen 5 1600 - 6 Core / Gigabyte B450 Aorus Pro / Sapphire RX580 8GB
PB 5.61 and earlier @ Manjaro Linux XFCE x64/ Fedora Linux Cinnamon x64 / Windows 10 x64 on various Hardware Platforms
Wohnort: Duisburg
Kontaktdaten:

Re: PB 4.50 Thread Problem

Beitrag von alen »

Hallo a14xerus,

sehe das Problem. Das Programm startet den Thread wird aber sofort auch beendet.
Daher kann nix kommen. Aber Du hast natürlich auch recht.

Das ist das Problem wenn man nicht immer nur mit PB arbeitet.
Danke Dir für den Denkanstoss.

Grüße
Alen
---
Main Hardware: AMD Ryzen 5 1600 - 6 Core / Asus B350M-A / Nvidia GTX650
PB 5.61 and earlier @ Manjaro Linux XFCE x64/ Fedora Linux Cinnamon x64 / Windows 10 x64
on various Hardware Platforms (Notebook and Desktop)
Antworten