Das nächste Python-Problem: threading

  • Tjo Freunde,

    nachdem ich gestern und heute stundenlang erfolglos nach verschiedenen Anleitungen einen Thread in Python erzeugen wollte, frag ich jetzt mal wieder die Spezialisten hier.
    Es geht um eine Funktion, die in einer Bibliothek als .so (shared object) definiert ist und die parallel zum Hauptprogramm laufen soll.
    Ich hänge jetzt mal das gesamte Archiv hier an.
    Um die Beispiele laufen zu lassen müssen die Environment-Variablen LD_LIBRARY_PATH und PYTHONPATH auf das aktuelle (Arbeits-) Verzeichnis gesetzt werde. (z.B. export PYTHONPATH=`pwd`)
    Vielleicht hat der eine oder andere Lust und Zeit sich das mal anzuschauen und evtl. ja sogar die Lösung parat.

    // EDIT:
    Was ich vergaß: Nach dem Entpacken des Archivs mit z.B. tar xvzf teil3.tgz in das Unterverzeichnis Teil_3 wechseln. Mit make alles bauen, mit make clean die erzeugten objects wegputzen.

    Thnx im Voraus,
    -ds-

  • Moin,

    Ich weiss zwar nicht genau, um was es da geht, da ich einen Windoof Rechner hier bei der Arbeit habe. Aber versuch es mal so:

  • Danke ihr beiden,

    ich setz das mal auf erledigt.
    Ich versuch' das mal mit einer richtigen Programmiersprache, also in C zu machen :fies: .
    Da kenn' ich mich wenigstens aus.
    Wenn das dann immer noch nicht klappt ... mal sehen.


    Hintergrund:
    Eine Funktion, die in Python aufgerufen wird, soll ein "Obejekt" erzeugen, das im Hintergrund nach Beeden der Funktion weiter existiert.
    Diese Funktion lauscht an einer Übertragungsleitung - z.B. seriell, wlan, ... und löst dann in Python ein Event aus, wenn Daten bereit zum Abholen sind. Das realisiere ich über Signale (deshalb war hier mal der Part mit dem Signal-Handler) weil das prima klappt.
    Mehr dazu demnächst.

    cheers,
    -ds-


  • ...Ich versuch' das mal mit einer richtigen Programmiersprache, also in C zu machen :fies: .


    Dann pass mal auf dass Dich Deine Programmiersprache nicht richtet :fies: Warum klebst Du an C? Warum bafasst Du Dich nicht mal mit einer modernen Programmiersprache? Das geht damit garantiert ;)

  • Schon faszinierend... Ich bin schon an C++ gescheitert, als ich in einem vorhanden Script in einer if Anweisung ein Python Skript mit einer Variablen als Argument aufrufen wollte und wieder andere bevorzugen C gegenüber Python :)

  • Klar, ist einfacher und schneller etwas in gewohnten Denkstrukturen zum implementieren. Ich für meine Person finde es immer wieder spannend eine neue Programmiersprache kennenzulernen und zu neuen Ufern aufzubrechen. Du glaubst nicht was Du da alles Neues und Interessantes entdecken kannst ;) Natürlich ist man dann nicht in jeder Sprache 'zu Hause' wie in der Sprache, die man täglich benutzt bzw die man als erstes gelernt hat (War bei mir Algol68 ... kennt das jemand? )


  • Dann pass mal auf dass Dich Deine Programmiersprache nicht richtet :fies: Warum klebst Du an C? Warum bafasst Du Dich nicht mal mit einer modernen Programmiersprache? Das geht damit garantiert ;)

    Tja ... is halt Gewohnheit, und Du wirst Dich wundern: ich entdecke nach 30 Jahren C-Programmierung immer noch was Neues ;) ...

    Ich denke, das liegt an der Ausbildung.
    Als ich damals eingestiegen bin, gab es nur C und Assembler als Sprachen für Techniker. Dazu kamen BAIC, Pascal, Kobol und natürlich VTAM. Wir haben uns damals halt mehr mit prozeduralen Sprachen herumgeschlagen.
    Ich habe mich damals auch Assembler eingeschossen ... und bin dabei geblieben. Allein schon, weil ich perfekt in C und Assembler denken kann. Das ging so weit, dass ich mit Assembler schneller passende Programme schreiben konnte als einige meiner Mitschüler und BASIC.
    Ich kenne im Prinzip auch C++ und hab' da schon diverse Software damit realisiert. Auch JAVA, C#, Visual-Basic, C++ mit MFC, PHP ... sind mir einigermassen geläufig. Aber mich ziehts einfach immer wieder zu C.
    Das mag auch daran liegen, dass ich C und Assembler einfach als logischer empfinge.

    Heutzutage lernen halt alle zunächst mal das Prinzip der Objektorientierung und in diesem Zusammenhang C++, JAVA, ...
    Deswegen kennen sich heute imho auch wesenltich weniger Leute damit aus, was sie da eigentlich tun. Ich kann das noch bis runter zur Schaltung und zum jeweiliegen Chip nachvollziehen. Das ist halt der Unterschied.

    Aber lassen wir das ... jedem das Seine. Und was ich nicht möchte, ist hier einen Lagerkampf anzetteln.
    Mit meinen Frotzeleien werde ihr halt leben müssen ;) ...

    -ds-,

    der nicht immer alles so eng sieht wie es vllt. erscheint.

  • ;)


    ...Aber lassen wir das ... jedem das Seine. Und was ich nicht möchte, ist hier einen Lagerkampf anzetteln.


    So sehe ich es auch. Aber Deine Bemerkung mit der 'richtigen' Programmiersprache konnte ich so nicht alleine stehen lassen :no_sad:

    Zitat


    ...Mit meinen Frotzeleien werde ihr halt leben müssen ;) ...


    So kennen wir Dich - so lieben wir Dich ;)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!