PureBasic 4.40 Beta1 released!

Ankündigungen PureBasic oder die Community betreffend.
freak
PureBasic Team
Beiträge: 766
Registriert: 29.08.2004 00:20
Wohnort: Stuttgart

Beitrag von freak »

cxAlex hat geschrieben:Gibts ne nähere Erklärung zum Threaded - Keyword?

Soweit ich das im Bsp. gesehen hab sorgt das dafür das eine Variable in jedem Thread vorhanden ist, und ihr Inhalt für jeden Thread extra gemanagt?

Gruß, Alex
Genau. Von der Sichtbarkeit her ist die Variable damit Global, jeder Thread bekommt aber seine eigene Variante der Variable. Damit kann eine Procedure die in Threads aufgerufen wird Werte zwischen Aufrufen abspeichern, so wie man es ohne Threads mit Static oder Global machen würde.

Das funktioniert auch mit Arrays, Listen oder Maps:

Code: Alles auswählen

Threaded NewList Something.s()

Damit erstellt man eine LinkedList pro Thread. Jeder Thread kann damit machen was er will ohne das die sich in die Quere kommen.

milan1612 hat geschrieben:Ach und Freak, vielleicht wäre eine kleine Widmung im About Fenster für den Autor
der neuen Silk Icons angebracht - wie schon für die alten und für Scintilla
Macht Sinn.
Benutzeravatar
Joel
Beiträge: 851
Registriert: 21.04.2006 19:22

Beitrag von Joel »

Hi, mal ne Frage:

Code: Alles auswählen

If CallFunction(0, "IsProzess", "CD.exe")
Hier sagt der Debugger: "Zahl anstelle eines Strings erwartet" aber wie soll ich meinem DLL einen Prozessnamen übergeben, wenn ich nur Zahlen angeben kann?

Ist das ein Bug oder mach ich was falsch?
----------------------------------------------------------

PB 5.20 Beta 10 | Windows 7
Benutzeravatar
cxAlex
Beiträge: 2111
Registriert: 26.06.2008 10:42

Beitrag von cxAlex »

Also eine Threaded String ist automatisch Thread-Safe weil es den String für jeden Thread 1* gibt? Was währe schneller, Threaded Strings oder einfach due Thread-Safe Option in den Compiler-Optionen?

Gruß, Alex
Projekte: IO.pbi, vcpu
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster

Bild

PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Benutzeravatar
Vermilion
Beiträge: 1846
Registriert: 08.04.2006 16:00
Computerausstattung: Apple iMac (2010) & HP Notebook
Wohnort: Heidekreis

Beitrag von Vermilion »

@Topic: GOIL.
freak
PureBasic Team
Beiträge: 766
Registriert: 29.08.2004 00:20
Wohnort: Stuttgart

Beitrag von freak »

cxAlex hat geschrieben:Also eine Threaded String ist automatisch Thread-Safe weil es den String für jeden Thread 1* gibt? Was währe schneller, Threaded Strings oder einfach due Thread-Safe Option in den Compiler-Optionen?

Gruß, Alex
Die Thread-Safe Option braucht man immernoch damit Stringoperationen allgemein sicher sind. Es geht dabei nicht um den Speicherort der Variablen sondern um den Stringmanager im Allgemeinen.

@Joel:
Verwende dazu @"IsProzess", oder nimm Prototypes wo du die Parameter als String definieren kannst.
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

@freak
In den alten Versionen der IDE gab es ja dieses Plugin-Interface. Arbeitest du daran noch oder hast du das gecancelt?
Benutzeravatar
inc.
Beiträge: 348
Registriert: 27.10.2004 12:25

Beitrag von inc. »

@ Freak

Erstmal vielen Dank für die neuen AddOns! :-)

Wie sieht es mit der Sondierungsfunktion der Hashmap aus? Wird eine lineare Sondierung vorgenommen? Oder wäre es in der Zukunft möglich optional eine quadratische Sondierung zu wählen?
Hier gibts die OOP Option für PureBasic.
freak
PureBasic Team
Beiträge: 766
Registriert: 29.08.2004 00:20
Wohnort: Stuttgart

Beitrag von freak »

edel hat geschrieben:@freak
In den alten Versionen der IDE gab es ja dieses Plugin-Interface. Arbeitest du daran noch oder hast du das gecancelt?
Da wird wohl nix mehr draus.
inc. hat geschrieben:@ Freak

Erstmal vielen Dank für die neuen AddOns! :-)

Wie sieht es mit der Sondierungsfunktion der Hashmap aus? Wird eine lineare Sondierung vorgenommen? Oder wäre es in der Zukunft möglich optional eine quadratische Sondierung zu wählen?
Momentan läuft das linear. Was die Zukunft angeht ist aber noch alles offen. Wenn die Unterstützung im Compiler und Debugger erstmal solide ist kann man immernoch an der Implementierung der Datenstruktur selber optimieren.
LCD
Beiträge: 107
Registriert: 23.01.2008 13:13
Wohnort: Wien

Beitrag von LCD »

Mein Projekt hat Probleme mit Images. Manchmal werden sie nicht gezeichnet, manchmal ist es invalid memory access. Seltsam...
PB 4.61Beta1 32/64Bit. AMD FX6100, 8 GB RAM, ATI Radeon 5750, Win7 64 (64 bit ist mist weil 16-Bit Programme wie MakeTZX nicht mehr darauf funktionieren).
freak
PureBasic Team
Beiträge: 766
Registriert: 29.08.2004 00:20
Wohnort: Stuttgart

Beitrag von freak »

LCD hat geschrieben:Mein Projekt hat Probleme mit Images. Manchmal werden sie nicht gezeichnet, manchmal ist es invalid memory access. Seltsam...
Benutzt du eventuell Plot/Point() außerhalb des Bildes ? Das darf man jetzt nicht mehr. (debugger check fehlt noch, kommt in beta2)
Antworten