auf Event warten

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Beitrag von Christian »

Weil du in deiner Anwendung keinen Thread Support mit eingebunden hast. pthreads muss auf unixen als erstes in der uses der Applikation Auftauchen. Das aktuelle Lazarus macht das aber soweit ich weiß allein.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

c-bob
Beiträge: 30
Registriert: Mo 15. Jun 2009, 11:11

Re:

Beitrag von c-bob »

Christian hat geschrieben:Synapse ist nicht asynchron weder bei Seriell noch bei TCP/IP also wirst du schon nen thread drumrumbaun müssen.
Um das Thema nochmal aufzuwärmen: Synapse respektive synaser kann ja erstmal garnicht "asynchron sein". Was asynchron ist, ist die RS232. Oder wie meintest du das?!
Und die heutigen UARTs haben ja einen vergleichsweise großen Puffer (um die 128B), d.h. ja ansich, dass man eigentlich nicht die ganze Zeit sondern nur von Zeit zu Zeit pollen müßte, richtig? Zumindest, wenn man eine überschaubare Datenmenge hat. Und dafür sollte doch synaser eigentlich sein, oder hab ich das falsch verstanden?!
Mein Problem ist momentan nämlich, dass ich nichtmal mit ständigem Pollen (in einem Testprogramm) die Daten auslesen kann (vgl.: http://www.lazarusforum.de/viewtopic.php?f=9&t=3020 - vielleicht habe ich ja auch etwas falsch bei der Unit verstanden?!
Gibt es eigentlich Ansätze für eine quasi "allumfassende" Lösung àla asyncpro, oder gar Pläne, diese Komponente auch Lazarus- und Linux-tauglich zu machen?

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6765
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Re:

Beitrag von af0815 »

c-bob hat geschrieben:Gibt es eigentlich Ansätze für eine quasi "allumfassende" Lösung àla asyncpro, oder gar Pläne, diese Komponente auch Lazarus- und Linux-tauglich zu machen?
Eines der Probleme ist, das diese Komponeneten meist über die WinAPI arbeiten und es somit nicht wirklich in die plattformneutrale Basis passt. Deshalb auch die 'neutralen' Lösungsansätze die du bereits kennengelert hast, die verwenden unabhängige Ansätze.

Wenn eine 'blocked' Version nicht funktioniert, dann wird das ganze mit Threads (=Nonblocked) auch nicht besser werden.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

c-bob
Beiträge: 30
Registriert: Mo 15. Jun 2009, 11:11

Re: auf Event warten

Beitrag von c-bob »

Okay, das ist wohl zu bedenken. Wenn die WinAPI im spiel ist, dann sollte die Umsetzung für andere Systeme (bspw. Linux) zwar nicht unmöglich, aber ungleich komplexer werden. Stimmt, das habe ich nicht bedacht.

Weiterhin muss ich mich aber wohl in die Programmierung mit Threads einarbeiten, ich komm sonst noch nicht so klar mit den Beschreibungen, wenns um "blocked" usw. geht. Hast Du da vielleicht einen guten Einstiegspunkt, Tutorial oder so?

Die Frage zur a-/synchronität von synaser ist damit aber immer noch offen.

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Re:

Beitrag von mschnell »

af0815 hat geschrieben: asyncpro, oder gar Pläne, diese Komponente auch Lazarus-
Async-Pro auf Linux werde ich irgendwann brauchen. Ich habe dann vor es zu portieren. Kann aber noch einige Monate dauern, bis das akut wird.
Wenn sonst jemand vorher schon daran arbeiten will, bitte melden. Vielleicht kann ich ja zumindest etwas Unterstützung leisten.

Async-Pro arbeitet massiv mit threads. Wenn man da 'ran will sollte man sich zunächst mit der Thread-Synchronisation beschäftigen und eine nicht explizit Windows-API basierte Lösung (SycObj ?) in Async-Pro einbauen. Am sichersten ist das vermutlich unter Verwendung von Delphi, damit man nicht an diversen Baustellen gleichzeitig werkeln muss.

-Michael

c-bob
Beiträge: 30
Registriert: Mo 15. Jun 2009, 11:11

Re: auf Event warten

Beitrag von c-bob »

Ooh, das klingt gut und hast meinen vollsten Respekt für das Vorhaben! Wenn ich könnte, würde ich Dir da gerne Unterstütung anbieten - nur, ich denke, da reichen meine bescheidenen Kenntnisse sowohl in Delphi/Pascal als auch die Programmierkenntnisse unter Linux im Allgemeinen bei Weitem nicht aus... :cry:
Andererseits, man wächst mit seinen Aufgaben - und wie geht das in diesem Bereich besser als an einem richtigen Projekt zu arbeiten.

Antworten