abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 18:00 | Nová verze

    Byla vydána nová verze 3.23.0 FreeRDP, tj. svobodné implementace protokolu RDP (Remote Desktop Protocol). Opravuje 11 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    dnes 17:44 | Zajímavý článek

    Španělský softwarový inženýr oznámil, že se mu podařilo na dálku ovládat sedm tisíc robotických vysavačů po celém světě. Upozornil tak na slabé kybernetické zabezpečení těchto technologií a jejich možné a snadné zneužití. Nesnažil se hacknout všechny robotické vysavače po světě, ale pouze propojil svůj nový DJI Romo vysavač se zařízením Playstation. Aplikace podle něj ihned začala komunikovat se všemi sedmi tisíci spotřebiči a on je

    … více »
    Ladislav Hagara | Komentářů: 0
    dnes 03:33 | Humor

    Momo je fenka cavapoo, která svými náhodnými stisky kláves bezdrátové klávesnice vytváří jednoduché počítačové hry. Technicky to funguje tak, že Raspberry Pi s připojenou bluetooth klávesnicí posílá text do Claude Code, který pak v Godotu píše hry a sám je i testuje pomocí screenshotů a jednoduchých simulovaných vstupů. Za stisky kláves je Momo automaticky odměňována pamlsky. Klíčový je pro projekt prompt, který instruuje AI, aby i

    … více »
    NUKE GAZA! 🎆 | Komentářů: 17
    dnes 02:22 | Nová verze

    GNU awk (gawk), implementace specializovaného programovacího jazyka pro zpracování textu, byl vydán ve verzi 5.4.0. Jedná se o větší vydání po více než dvou letech. Mezi četnými změnami figuruje např. MinRX nově jako výchozí implementace pro regulární výrazy.

    |🇵🇸 | Komentářů: 0
    včera 16:22 | IT novinky

    Internetový prohlížeč Ladybird ohlásil tranzici z programovacího jazyka C++ do Rustu. Přechod bude probíhat postupně a nové komponenty budou dočasně koexistovat se stávajícím C++ kódem. Pro urychlení práce bude použita umělá inteligence, při portování první komponenty prohlížeče, JavaScriptového enginu LibJS, bylo během dvou týdnů pomocí nástrojů Claude Code a Codex vygenerováno kolem 25 000 řádků kódu. Nejedná se o čistě autonomní vývoj pomocí agentů.

    NUKE GAZA! 🎆 | Komentářů: 5
    včera 15:55 | Nová verze

    Byl vydán Mozilla Firefox 148.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Nově lze snadno povolit nebo zakázat jednotlivé AI funkce. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 148 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 2
    včera 12:44 | Nová verze

    Byla vydána nová verze 22.1.0, tj. první stabilní verze z nové řady 22.1.x, překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, LLD, Extra Clang Tools a Libc++.

    Ladislav Hagara | Komentářů: 0
    včera 12:22 | Humor

    X86CSS je experimentální webový emulátor instrukční sady x86 napsaný výhradně v CSS, tedy bez JavaScriptu nebo dalších dynamických prvků. Stránka 'spouští' assemblerovový program mikroprocesoru 8086 a názorně tak demonstruje, že i prosté CSS může fungovat jako Turingovsky kompletní jazyk. Zdrojový kód projektu je na GitHubu.

    NUKE GAZA! 🎆 | Komentářů: 6
    včera 12:11 | Nová verze

    Po šesti letech byla vydána nová verze 1.3 webového rozhraní ke gitovým repozitářům CGit.

    Ladislav Hagara | Komentářů: 0
    včera 02:33 | Nová verze

    Byla vydána nová verze 6.1 linuxové distribuce Lakka (Wikipedie), jež umožňuje transformovat podporované počítače v herní konzole. Nejnovější Lakka přichází s RetroArchem 1.22.2.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (18%)
     (6%)
     (0%)
     (11%)
     (27%)
     (2%)
     (5%)
     (1%)
     (12%)
     (26%)
    Celkem 955 hlasů
     Komentářů: 25, poslední 3.2. 19:50
    Rozcestník

    Dotaz: qt4 thread + signal

    29.5.2013 13:33 pou | skóre: 18
    qt4 thread + signal
    Přečteno: 265×

    Ahoj,
    mám problém se signály a sloty. Mám vytvořené dvě třídy ve dvou vláknech (pomocí Thread run). V jednom vláknu získávám data a po zpracování se je snažím předat druhému vláknu pomocí signálu a slotu. Pro data mám vytvořenou vlastní strukturu.

    Vše se zdá, že funguje (žádné hlášení při kompilaci). Při spuštění se data opravdu přesouvají z jednoho vlákna do druhého. ALE při zrušení aplikace(třídy A) vypíše QT následující hlášku:

    Qt has caught an exception thrown from an event handler. Throwing exceptions from an event handler is not supported in Qt. You must reimplement QApplication notify() and catch all exceptions there.

     

    (po reimplementaci notify jsem obdrzel stejnou hlasku).

     

    Díky za každou odpověd!!!

     

     

    Přidávám dulezite casti kodu:

    class Global{
    typedef struct mStruct{
    int promenna;
    int promenna2;
    }mStruct;
    };
    Q_DECLARE_METATYPE(GFunction::mStruct)

    class B{
    signal:
    mSignal(Global::mStruct);
    };

    class A:QThread{
    ~A{
    this->terminate();
    QThread::wait() ;
    }

    void run(){
    B b;
    qRegisterMetaType<Global::mStruct> ("Global::mStruct");
    connect(&b,SIGNAL(mSignal(Global::mStruct)),this,SLOT(mSlot(Global::mStruct)));
    exec();
    }
    slot:
    mSlot(Global::mStruct){}
    };

    Odpovědi

    29.5.2013 13:57 pou | skóre: 18
    Rozbalit Rozbalit vše Re: qt4 thread + signal

    Tak jsem zjistil,

    že tu varovnou hlášku způsobuje pravděpodobně exec(), ale nevím co místo něj použít, možná eventloop???

    30.5.2013 07:18 pou | skóre: 18
    Rozbalit Rozbalit vše Re: qt4 thread + signal

    Tak po dlouhém hledání a zkoušení různých věcí jsem zjistil, že problém dělá ukončování vlákna.

    Je nutné použít this->quit(); potom uz hláška nevyskočí a vše je korektní.

    29.5.2013 14:14 Roman Došek | skóre: 17 | blog: flare
    Rozbalit Rozbalit vše Re: qt4 thread + signal

    Z toho kódu co je přiložený není úplně zřejmé, jakým způsobem máš obě třídy vytvořené, ale s největší pravděpodobností vůbec nemusíš ve třídě A dědit QThread. Někdy v Qt4.4 se totiž změnil způsob práce s QThread a nyní je to spíš interface, pomocí kterého se s vlákny manipuluje.

    Dokumentace bohužel tuhle "malou" změnu nějak nereflektuje a neobsahuje korektní příklad použití.

    Jak správně použít QThread je třeba tady.

    29.5.2013 14:21 Roman Došek | skóre: 17 | blog: flare
    Rozbalit Rozbalit vše Re: qt4 thread + signal
    Případně dokumentace ke Qt5 už obsahuje lepší příklad, pokud _opravdu_ potřebuješ dědit QThread.
    30.5.2013 07:22 pou | skóre: 18
    Rozbalit Rozbalit vše Re: qt4 thread + signal
    Tak to je dobrý vědět, díky za odkazy!!!!

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.