Die Suche ergab 56 Treffer

von schoschy
Do 27. Feb 2025, 09:59
Forum: Freepascal
Thema: erneuten Programmstart verhindern
Antworten: 7
Zugriffe: 3258

Re: erneuten Programmstart verhindern

Ich verwende
https://wiki.lazarus.freepascal.org/UniqueInstance
Da kannst du dir aussuchen, ob das bestehende oder neue Programm wieder geschlossen werden soll.

Das schließen unterbinden ist natürlich die schönere Lösung.
von schoschy
Di 25. Feb 2025, 09:17
Forum: Units/Komponenten
Thema: Spieleprogrammierung mit Pascal - Nützliches und nicht so Nützliches
Antworten: 28
Zugriffe: 18920

Re: Spieleprogrammierung mit Pascal - Nützliches und nicht so Nützliches

Kurz mal noch zu dem Thema Ressourcen in großen Projekten.

Ich habe vor ~5 Jahren einmal mit Unity einen Videoguide gemacht, welcher von Unity selbst war - kostenlos.
Man hat halt wirklich vieles, was dort einfach abgebildet ist. Oft eher schlecht als recht, wenn man Performance einmal in Betracht ...
von schoschy
Mi 22. Jan 2025, 08:59
Forum: Sonstiges
Thema: log optimierung gesucht
Antworten: 12
Zugriffe: 2838

Re: log optimierung gesucht


Das teuerste ist immer ein IO auf Ebene des Filesystems, das lernt man in allen DB Admin Kursen als erstes. Deswegen ist auch immer zu überlegen wie und was man wirklich loggen muß.
ist klar - das erste Provisorium ist aber auch immer das permanenteste. :lol:

Ist es nur Applikationsspezifisch ...
von schoschy
Di 21. Jan 2025, 13:24
Forum: Sonstiges
Thema: log optimierung gesucht
Antworten: 12
Zugriffe: 2838

Re: log optimierung gesucht


Wird dir ein
DebugLogger.OpenFile/CloseFile angeboten?

Wird es mir nicht - finde ich aber raus, ob und wie es geht.

Noch als Zusatz:

DebugLogger.CloseLogFileBetweenWrites:=True;
Das reiht sich in die anderen beiden Ergebnisse ein. ~4min

Im Fazit bin ich mit meiner Applikation wohl am Limit ...
von schoschy
Di 21. Jan 2025, 12:59
Forum: Sonstiges
Thema: log optimierung gesucht
Antworten: 12
Zugriffe: 2838

Re: log optimierung gesucht

Kurz einmal verwertbare Ergebnisse, dass man hier auch etwas damit anfangen kann.
tryExcept: 264047 ms
FileExists: 269812 ms
Filestream schreiben: 2516 ms
LazLogger: 312 ms
Lesen ist noch nichtsaussagend, aufgrund meiner Testumgebung.
Auf einer HDD ist hier Faktor 1,6 mehr im gegentest gewesen ...
von schoschy
Di 21. Jan 2025, 11:36
Forum: Sonstiges
Thema: log optimierung gesucht
Antworten: 12
Zugriffe: 2838

Re: log optimierung gesucht

Ich hab eben mal noch weiter gegengetestet.
Jetzt ist so ein test natürlich recht kurz gehalten und wird von jeglichem Flash akzeptiert.
auf einer HDD die hier noch zum test vorhanden war sind es aber schonmal 600ms zeitversatz. hier kann aber immernoch OS und flash der HDD (in dem fall vorhanden ...
von schoschy
Di 21. Jan 2025, 11:03
Forum: Sonstiges
Thema: log optimierung gesucht
Antworten: 12
Zugriffe: 2838

Re: log optimierung gesucht


Nur so eine Frage - warum nicht LazLogger oder MultiLog ? Die sind in sich optimiert und der LazLogger ist in Lazarus auch vorhanden und wird deswegen auch entsprechend gepflegt.

Es gibt sogar Programme, wo ich beides zugleich verwende. LazLogger um aktuelle Ereignisse zu dokumentieren (Console ...
von schoschy
Di 21. Jan 2025, 11:01
Forum: Sonstiges
Thema: log optimierung gesucht
Antworten: 12
Zugriffe: 2838

Re: log optimierung gesucht


Ein Try/Except?

Aircode

Try
s:=TFileStream.Create(logfile,fmOpenWrite);
Except
On EFOpenError Do s:=TFileStream.Create(logfile,fmCreate);
End;
https://www.freepascal.org/docs-html/rtl/classes/tfilestream.create.html

If the file could not be opened in the requested mode, an EFOpenError ...
von schoschy
Di 21. Jan 2025, 09:48
Forum: Sonstiges
Thema: log optimierung gesucht
Antworten: 12
Zugriffe: 2838

log optimierung gesucht

Moin,

aktuell logge ich aus allen möglichen richtungen in eine Textdatei.
Das Funktioniert ohne Probleme mit SSDs, bei HDDs kann es aber schon mal zu problemen führen wenn das I/O-delay im dreistelligen ms-Bereich ankommt.


if FileExists(logfile) then
stream := TFileStream.Create(logfile ...
von schoschy
Di 10. Dez 2024, 07:28
Forum: Sonstiges
Thema: Timing zu hoch...
Antworten: 6
Zugriffe: 3605

Re: Timing zu hoch...

Das mit der Überprüfung anhand der vergangenen Zeit macht man in Unity auf jeden fall so.
Da überprüft man zwar beim neu laden des Frames, aber jeder PC ist unterschiedlich schnell, selbst mit baugleicher Hardware, weshalb alles andere nicht funktioniert.

Viel hab ich in Unity zwar nicht gemacht ...
von schoschy
Fr 27. Sep 2024, 12:22
Forum: Datenbanken
Thema: Erstellen von Tabellen
Antworten: 47
Zugriffe: 11244

Re: Erstellen von Tabellen



... und wenn man die Normalformen dann verstanden hat, kommt jemand mit einer nichtrelationalen Datenbank um die Ecke und rät einem, die Normalisierung schnell wieder zu vergessen. :D


.... und da ich lange Jahre im Einkauf eines Grosshandels gearbeitet habe, würde ich diesem jemand nur ...
von schoschy
Do 26. Sep 2024, 14:44
Forum: Komponenten und Packages
Thema: Stringgrid onSelectCell
Antworten: 5
Zugriffe: 1067

Re: Stringgrid onSelectCell

Gibt es MUP/MDOWN, ich verwende kaum GUI Elemente in Lazarus.

Kann man ja auch einfach einen Boolean drüber machen.

Code: Alles auswählen

OnMouseDown
boolCheckClick:= True;
OnMouseUp
boolCheckClick:= False;
und im Slect.

Code: Alles auswählen

if boolCkeckClick then 
begin
...
end;
Tastaturselektierung fällt damit aber auch raus.
von schoschy
Di 24. Sep 2024, 08:59
Forum: Dies und Das
Thema: HTTPS für Subdomain?
Antworten: 8
Zugriffe: 2986

Re: HTTPS für Subdomain?

Einfach einen reverse Proxi vornan?
ich nutze den nginx , sonst ist auch nichts erreichbar.

Inet
---
nginx Reverse Proxy
---
mehrere Container, Server, usw. im LAN die anhand der Subdomain angesprochen werden.

gibt es tonnenweiße Tutorials dazu.
von schoschy
Do 5. Sep 2024, 16:10
Forum: Programmierung
Thema: Dateiformat "erfinden" - gibt's da schon was in LAZARUS ?
Antworten: 21
Zugriffe: 5824

Re: Dateiformat "erfinden" - gibt's da schon was in LAZARUS ?

Wenn du deine Daten zuordnen kannst, dann würde ich JSON machen.
Ich hab hier beispielsweise AT commands oft anliegen.

Da pack ich mir die einzelnen anfragen in JSON

also frei runtergebrochen
request:xy
value1:1
value2:2
value3:3

"echo antwort"
irgendwelche zusatzinfos
OK

Und das setz ich dan in ...