Seite 3 von 4

Verfasst: 20.02.2009 22:29
von cxAlex
Jo, liegt auch an der Auslastung deines PCs, und wie viel Prozessorzeit ander Programme im Hintergrund brauchen, unter idealen Vorraussetzungen bringst natürlich mehr.

Verfasst: 22.02.2009 17:26
von cxAlex
Update:
  • Kleinen Bug behoben bei dem JobQueue_WaitUntilFinish() zu früh ausgelöst wurde
  • "Persönliche" Messages der Worker werden durch separate Mutexes geschützt um Hauptmutex zu entlasten
  • Reader-Writer Problem minimiert, noch weniger unnötige Mutex - Anfragen
  • Statusmeldungen & Childverwaltung der Jobs geändert, nun Speicherschonender
  • System noch performater
Wem es interessiert, weiterführende Links zum Thema:

Active Waiting, DeathLock, Interprozesskommunikation, ThreadSyncronisation, Scheduling sehr schön erklärt:

http://www.zdnet.de/anwendungsentwicklu ... 7412-1.htm
http://msdn.microsoft.com/de-de/library/h14y172e.aspx
http://de.wikipedia.org/wiki/Mutex
http://de.wikipedia.org/wiki/Semaphor_%28Informatik%29
http://de.wikipedia.org/wiki/Parallele_Programmierung
http://de.wikipedia.org/wiki/Erzeuger-V ... er-Problem

Bugreports, Featurerequest, Wünsche, Beschwerden, Ergebnisse der Democodes, oder einfach nur nen kleinen Kommentar wie immer bitte hier :D


Download im 1. Post oder:

http://www.paladiumx.forgesoft.net/publ ... Thread.zip

Verfasst: 24.02.2009 15:45
von cxAlex
Update:
  • "JobQueue_" in "JQ_" umbennant (schneller zu schreiben und sagt gleichviel aus)
  • JQ_Free() in JQ_DeInit() umbennant, optinaler Parameter für ein DeInit - Timeout (Rückgabe: #True wenn Erfolg)
  • JQ_DeInitCritical(): Beendet die Threads per KillThread(), nicht zu empfehlen.
  • JQ_DeInitForce(): Versucht die Threads eine bestimmt Zeit lang normal zu beenden, danach JQ_DeInitCritical()
  • JQ_RemoveWorker(): Entfernt Workers nun sicherer (getriggert per Semaphore)
  • JQ_QuitWorker(): Bestimmten Worker beenden
  • Include steht unter GPL v3
Soweit bin ich mal ganz zufrieden mit dem Include, die Performance passt, die Konfigurationsmöglichkeiten auch. Ich bin am Überlegen ob ich einen Netzwerk-Aufsatz für dieses Include schreibe, also die Rechenleistung eines PC via Network zur Verfügung zu stellen (einfacher HPC-Cluster). Ich hab sogar schon ein kongretes Konzept in Hinterkopf und wie ich es realisieren könnte, hat da jemand Interesse das mitzuentwickeln :D (PN/Hier melden)?

PS: Hat schon jemand das Include auf Linux/MacOS X getestet? In der Theorie müsste es funktionieren, da ich keine Windows-spezifischen Funktionen verwende, konnte es aber leider noch nicht testen :| .

Download im 1. Post oder:

http://www.paladiumx.forgesoft.net/publ ... Thread.zip

Verfasst: 30.03.2009 17:24
von cxAlex

Re: JobQueue - MultiThread

Verfasst: 26.11.2010 16:21
von Oli!
Hat zufällig noch jemand die Zip-Datei als Download? Alle Downloadlinks sind leider nicht mehr verfügbar :(

Vielen Dank

Re: JobQueue - MultiThread

Verfasst: 26.11.2010 18:02
von Kiffi
Oli! hat geschrieben:Hat zufällig noch jemand die Zip-Datei als Download? Alle Downloadlinks sind leider nicht mehr verfügbar :(
schreib cxAlex doch einfach via PN an. Bei entsprechender Einstellung
müsste er dann eine Mail bekommen. Dürfte wohl das einfachste und
schnellste sein.

Grüße ... Kiffi

Re: JobQueue - MultiThread

Verfasst: 05.01.2011 18:09
von Tombi
Habe Ihn auch mal angeschrieben, aber bisher noch keine Antwort bekommen.
Falls jemand dennoch das Zip-Archive auf seiner Festplatte liegen hat, würde ich mich sehr darüber freuen !


Mit freundlichen Grüßen,
Tombi

Edit: Ist/Wäre das Script überhaupt zu PB4.51 kompatibel? Der letzte Beitrag zu dem Projekt vom Threadersteller ist von 2009.

Re: JobQueue - MultiThread

Verfasst: 09.02.2011 11:47
von cxAlex
Update.

Download-Link aktualisiert.
Das Archiv enthält nun auch eine Lite-Version, die ich sehr gerne in meinen Projekten einsetzte, inklusive Thread-Sleep Funktion.

Gruß, Alex

Re: JobQueue - MultiThread

Verfasst: 13.06.2013 09:12
von c4s
Ich beschäftige mich momentan damit den Bearbeitungsteil eines umfangreichen Batch-Tools (d.h. ein Programm, dass massenhaft Dateien verarbeitet) auf Multi-Threading umzustellen.
Dieses Projekt scheint mir gut geeignet einiges an Arbeit bzgl. Verwaltung usw. abnehmen zu können - In der PB-Community ist es wohl auch das Einzige diesbezüglich?!

Mittellange Rede, kurzer Sinn: Beide Download-Links funktionieren leider nicht mehr. Wurde das Projek seit 2009-2011 weiterentwickelt? Besteht die Chance die aktuellste Version herunterladen zu können?

Re: JobQueue - MultiThread

Verfasst: 13.06.2013 12:08
von cxAlex
Hier mal ein kleiner Snapshot meines Projektverzeichnisses, habs kurz getestet, sollte unter der aktuellen PB - Version laufen.

Ich hab vor allem die LE - Version weiterentwickelt, also die Single-Thread und verwende dann mehrere Objekte davon, allerdings nicht in diesem Paket, bin grade in der Arbeit und hab den Ordner wohl noch nicht aufs NAS replizieren lassen. Die Multi-Thread Version hier sollte aber gute Dienste leisten.

https://skydrive.live.com/redir?resid=3 ... 51FB!23947

Gruß, Alex