Das nächste Entwicklertreffen findet Anfang Mai in Münster statt - weitere Infos bzw. zur Anmeldung!

Garbage Collector priorisieren

Alle Fragen um die Programmierung, die sich sonst nicht kategorisieren lassen. Von Makro bis Codeblock, von IF bis ENDIF

Moderator: Moderatoren

Antworten
ramses
Programmier-Gott
Programmier-Gott
Beiträge: 1156
Registriert: Mi, 28. Jul 2010 17:16

Garbage Collector priorisieren

Beitrag von ramses » Sa, 05. Jan 2019 19:11

Hi

Gibt es einen Weg oder Trick dem Garbage Collector eine höhere Priorität zuzuweisen?

Ich habe das Problem dass bei längerer (einige Minuten) maximaler Auslastung des Prozessors durch ein Programm mit mehreren Threads im Programm der Garbage Collector mit mehr oder nicht mehr korrekt Aufräumt was nach einigen Minuten zu steigendem Speicherverbrauch und dann zu einem Crash führt.


Gruss Carlo

Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 11601
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Re: Garbage Collector priorisieren

Beitrag von AUGE_OHR » Sa, 05. Jan 2019 22:11

hi,

IMHO gibt es mit "pure" Xbase++ keinen Weg den CG gezielt zu aktivieren aber eine SLEEP(0) wirkt Wunder.

... ich meine bei Pablo mal ein Trick gesehen zu haben aber ich finde ihn nicht.
gruss by OHR
Jimmy

Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 18292
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Garbage Collector priorisieren

Beitrag von Manfred » So, 06. Jan 2019 10:03

Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite

ramses
Programmier-Gott
Programmier-Gott
Beiträge: 1156
Registriert: Mi, 28. Jul 2010 17:16

Re: Garbage Collector priorisieren

Beitrag von ramses » So, 06. Jan 2019 12:37

Danke für den Hinweis mit sleep(0).

Mit Sleep() bin ich jetzt seit Tagen am Experimentieren.
Ich konnte damit ereichen dass es ein wenig länger dauert bis es zum Crash kommt und vorallem die Performance mehr oder weniger schlechter wird.

Das grundsätzliche Problem bleibt jedoch bestehen.

Das Xbase Programm läuft mit ALLEN Threads auf EINEM einzigen Prozessorkern. (es sind ja je nach Gerät nur 10-20 Kerne vorhanden)
So lange dieser eine verwendete Kern nicht voll ausgelastet ist funktioniert alles einwandfrei über Wochen!
Steigen die Anforderungen und damit die Auslastung des einen verwendeten Kerns gegen 100% beginnt der verwendete Arbeitsspeicher zu steigen. Auch wenn die Auslastung in Wellen kommt der Speicher der zu Zeiten der 100% Auslastung belegt wird wird nicht mehr freigegeben. Und irgendwann kommt es zum Crash. Bezw. Fehler.

Der ist immer:
ERROR BASE/2266 Empfänger der Nachrichten ist kein Objekt


Ein Callstack oder Infos zu Ursächlichen Zeile ist dann nicht verfügbar. Es gelingt auch nicht die Threads aus dem Errorhandler neu zu starten oder das Programm zu beenden.
Das Programm kann nur im Taskmanager beendet werden oder durch ALT-C.

Letzteres zeigt dann als Hinweis noch:
FATAL ERROR LOG
Abort with Alt-C
SYS Thread-ID: 1328
Module: EVM
Error Codes: EH: 11 Sub: 0(0) OS: 0 XPP: 0



Gruss Carlo

Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 14661
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Kontaktdaten:

Re: Garbage Collector priorisieren

Beitrag von brandelh » Mo, 07. Jan 2019 8:59

Die unlesbaren Kommentare, ist das ein Fehler der Zitat Funktion ?
So ein Mist
scheint so, denn ich habe ...

Code: Alles auswählen

[quote]So ein Mist[/quote]
eingegeben
Gruß
Hubert

Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 14701
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Kontaktdaten:

Re: Garbage Collector priorisieren

Beitrag von Martin Altmann » Mo, 07. Jan 2019 9:10

:?: Welche unlesbaren Kommentare meinst Du?

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
stellv. Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.

Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 14661
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Kontaktdaten:

Re: Garbage Collector priorisieren

Beitrag von brandelh » Mo, 07. Jan 2019 9:18

Ich sehe oben das:
Kommentarfenster.png
Kommentarfenster.png (13.58 KiB) 707 mal betrachtet
Gruß
Hubert

Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 14701
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Kontaktdaten:

Re: Garbage Collector priorisieren

Beitrag von Martin Altmann » Mo, 07. Jan 2019 9:23

Ah - OK!
Ich sehe das:
Unbenannt.PNG
Unbenannt.PNG (8.32 KiB) 703 mal betrachtet
Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
stellv. Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.

Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 14661
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Kontaktdaten:

Re: Garbage Collector priorisieren

Beitrag von brandelh » Mo, 07. Jan 2019 9:43

mit PROSILVER stimmt die Anzeige, ich hatte All...subsilver
Gruß
Hubert

Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 14701
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Kontaktdaten:

Re: Garbage Collector priorisieren

Beitrag von Martin Altmann » Mo, 07. Jan 2019 9:44

Das hatte ich vermutet - darum habe ich es auch unter ALLANStyle versucht - geht bei mir genauso!
Solltest mal deinen Cache leeren.

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
stellv. Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.

Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 14661
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Kontaktdaten:

Re: Garbage Collector priorisieren

Beitrag von brandelh » Mo, 07. Jan 2019 9:59

Firefox zeigt es richtig an auch mit Allen..., mein Google Chrome hat aber damit ein Problem.
Gruß
Hubert

Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 14701
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Kontaktdaten:

Re: Garbage Collector priorisieren

Beitrag von Martin Altmann » Mo, 07. Jan 2019 10:25

Ich kann mich nur wiederholen - leere Deinen Cache und Deine temporären Internetdateien!
Habe es auch gerade mit Google Chrome ohne Probleme versucht.

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
stellv. Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.

Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 14661
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Kontaktdaten:

Re: Garbage Collector priorisieren

Beitrag von brandelh » Mo, 07. Jan 2019 10:45

den habe ich heute morgen frisch aufgemacht, reicht F5 ?

Meine gespeicherten Kennwörter möchte ich nicht zurücksetzen ;-)
Gruß
Hubert

Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 14661
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Kontaktdaten:

Re: Garbage Collector priorisieren

Beitrag von brandelh » Mo, 07. Jan 2019 10:48

OK unter Einstellungen / Datenschutz habe ich das gefunden und jetzt geht es.
Gruß
Hubert

Antworten