Debenu Quick PDF Library ist sehr umfangsreich und ich bin sehr dankbar das es den tollen Wrapper von Pablo und Brandel gibt. Es funktioniert auch wahnsinnig schnell.
Mein Projekt belastet XBASE extrem, der CPU liegt konstant bei 100%
wo hunderte von PDF's analysiert werden.
Da entsteht leider manchmal ein Crash - nach etw 5 minuten und 100% CPU:
Internal Datastructures corrupted.
Es ist nicht genau wiederhohlbar -also hat nichts mit der PDF zu tun.
Aber entsteht immer bei funktion RenderPageToFile() wo ein JPG geschrieben wird am Festplatte.
Hat jemand ein Idé um es zu verhindern? Vielleicht Buffern manchmal löchen ??
Gruss Bengt
Debenu Quick PDF Library
Moderator: Moderatoren
- AUGE_OHR
- Marvin
- Beiträge: 12906
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 45 Mal
Re: Debenu Quick PDF Library
dann musst du es "langsamer" machen, mittels SLEEP(x), damit Xbase++ Zeit bekommt und den CG aktiveren kann.BenOve hat geschrieben:Es funktioniert auch wahnsinnig schnell.
Mein Projekt belastet XBASE extrem, der CPU liegt konstant bei 100%
wo hunderte von PDF's analysiert werden.
Da entsteht leider manchmal ein Crash - nach etw 5 minuten und 100% CPU:
Internal Datastructures corrupted.
gruss by OHR
Jimmy
Jimmy
- brandelh
- Foren-Moderator
- Beiträge: 15695
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Debenu Quick PDF Library
Wenn du möchtest, kannst du mir mal den Quellcode der Stelle per eMail senden, etwa ab der steuernden Schleife ...
Nutzt du Privates oder nur Locals ?
Nutzt du Privates oder nur Locals ?
Gruß
Hubert
Hubert
Re: Debenu Quick PDF Library
Gerade habe ich festgestellt das ein Loop für FRENAME()
wunderbar funktioniert bei kleinere Anzahl von Dateien , zB 100
Aber bei rename von 2000 Dateien bekommen "nur" 95% einen neuen Name.
Ist es dann zu empfehen dann, immer wieder FRENAME() zu machen bis es gelingt ?
DO while FRENAME(cName1, cName2) # 0
ENDDO
Der gefundene Instabilität bei Debenu hat vielleicht einen ähnlichen Grund
Als quick-fix habe ich jetzt eine freistehende .exe gemacht um einen einzigen PDF
umfangsreich zu behandeln, und es wird mit RunShell() von Hauptprogramm angerufen.
Jetzt kann es unbegrenzte Mengen PDF's durchlaufen mit totale Stabilität.
wunderbar funktioniert bei kleinere Anzahl von Dateien , zB 100
Aber bei rename von 2000 Dateien bekommen "nur" 95% einen neuen Name.
Ist es dann zu empfehen dann, immer wieder FRENAME() zu machen bis es gelingt ?
DO while FRENAME(cName1, cName2) # 0
ENDDO
Der gefundene Instabilität bei Debenu hat vielleicht einen ähnlichen Grund
Als quick-fix habe ich jetzt eine freistehende .exe gemacht um einen einzigen PDF
umfangsreich zu behandeln, und es wird mit RunShell() von Hauptprogramm angerufen.
Jetzt kann es unbegrenzte Mengen PDF's durchlaufen mit totale Stabilität.
- brandelh
- Foren-Moderator
- Beiträge: 15695
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Debenu Quick PDF Library
in solchen loops ist es sinnvoll entweder sleep(1) (bis max 10) zu verwenden um dem System Zeit zur Ausführung zu geben.
Gruß
Hubert
Hubert
Re: Debenu Quick PDF Library
Erst habe ich ein loop gemacht
aber FRENAME() meldet sofort 0 = Erfolg
ohne das es immer Eerfolg war.
Danach habe ich ein Loop gemacht
Erst FRENAME()
dann mit FILE() überprüfen ob der neåue Datei entstanden ist
und erst danach den Loop verlassen
Jetzt lauft es total schnell und mit 100% Erfolg.
Also, wenn FRENAME()
0=Erfolg meltet kann mann sich darauf nicht immer verlassen.
Diese Dinge werden erst merkbar mit sehr viele Dateien , zB 2000
aber FRENAME() meldet sofort 0 = Erfolg
ohne das es immer Eerfolg war.
Danach habe ich ein Loop gemacht
Erst FRENAME()
dann mit FILE() überprüfen ob der neåue Datei entstanden ist
und erst danach den Loop verlassen
Jetzt lauft es total schnell und mit 100% Erfolg.
Also, wenn FRENAME()
0=Erfolg meltet kann mann sich darauf nicht immer verlassen.
Diese Dinge werden erst merkbar mit sehr viele Dateien , zB 2000