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 00:44 | IT novinky

    Po 8. květnu 2026 už na Instagramu nebudou podporované zprávy opatřené koncovým šifrováním. V chatech, kterých se bude změna týkat, se objeví pokyny o tom, jak si média nebo zprávy z nich stáhnout, pokud si je chcete ponechat.

    Ladislav Hagara | Komentářů: 3
    dnes 00:33 | IT novinky

    V lednu byla ve veřejné betě obnovena sociální síť Digg (Wikipedie). Dnes bylo oznámeno její ukončení (Hard Reset). Společnost Digg propouští velkou část týmu a přiznává, že se nepodařilo najít správné místo na trhu. Důvody jsou masivní problém s boty a silná konkurence. Společnost Digg nekončí, malý tým pokračuje v práci na zcela novém přístupu. Cílem je vybudovat platformu, kde lze důvěřovat obsahu i lidem za ním. Od dubna se do Diggu na plný úvazek vrací Kevin Rose, zakladatel Diggu z roku 2004.

    Ladislav Hagara | Komentářů: 5
    včera 12:33 | Zajímavý projekt

    MALUS je kontroverzní proprietarní nástroj, který svým zákazníkům umožňuje nechat AI, která dle tvrzení provozovatelů nikdy neviděla původní zdrojový kód, analyzovat dokumentaci, API a veřejná rozhraní jakéhokoliv open-source projektu a následně úplně od píky vygenerovat funkčně ekvivalentní software, ovšem pod libovolnou licencí.

    NUKE GAZA! 🎆 | Komentářů: 15
    včera 03:55 | Bezpečnostní upozornění

    Příspěvek na blogu Ubuntu upozorňuje na několik zranitelností v rozšíření Linuxu o mandatorní řízení přístupu AppArmor. Společně jsou označovány jako CrackArmor. Objevila je společnost Qualys (technické detaily). Neprivilegovaný lokální uživatel se může stát rootem. Chyba existuje od roku 2017. Doporučuje se okamžitá aktualizace. Problém se týká Ubuntu, Debianu nebo SUSE. Red Hat nebo Fedora pro mandatorní řízení přístupu používají SELinux.

    Ladislav Hagara | Komentářů: 2
    12.3. 17:22 | Nová verze

    Byla vydána nová verze 19 integrovaného vývojového prostředí (IDE) Qt Creator. Podrobný přehled novinek v changelogu.

    Ladislav Hagara | Komentářů: 0
    12.3. 03:44 | Nová verze

    Bitwig Studio (Wikipedie) bylo vydáno ve verzi 6. Jedná se o proprietární multiplatformní (macOS, Windows, Linux) digitální pracovní stanici pro práci s audiem (DAW).

    Ladislav Hagara | Komentářů: 4
    12.3. 02:11 | Komunita

    Společnost Igalia představila novou linuxovou distribuci (framework) s názvem Moonforge. Jedná se o distribuci určenou pro vestavěné systémy. Vychází z projektů Yocto a OpenEmbedded.

    Ladislav Hagara | Komentářů: 0
    12.3. 00:44 | Nová verze

    Google Chrome 146 byl prohlášen za stabilní. Nejnovější stabilní verze 146.0.7680.71 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 29 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    12.3. 00:22 | Nová verze

    D7VK byl vydán ve verzi 1.5. Jedná se o fork DXVK implementující překlad volání Direct3D 3 (novinka), 5, 6 a 7 na Vulkan. DXVK zvládá Direct3D 8, 9, 10 a 11.

    Ladislav Hagara | Komentářů: 0
    11.3. 23:22 | Nová verze

    Bylo vydáno Eclipse IDE 2026-03 aneb Eclipse 4.39. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.

    Ladislav Hagara | Komentářů: 5
    Které desktopové prostředí na Linuxu používáte?
     (16%)
     (7%)
     (0%)
     (12%)
     (29%)
     (2%)
     (5%)
     (1%)
     (13%)
     (24%)
    Celkem 1076 hlasů
     Komentářů: 26, poslední 12.3. 08:56
    Rozcestník

    Dotaz: pyQT4 a QThread

    1.7.2007 10:50 pepik | skóre: 16 | blog: nevim | Chlumec nad Cidlinou
    pyQT4 a QThread
    Přečteno: 644×
    Používám standartní funkci Thread, která je v modulu pro Python. Můj program zobrazuje GUI s progressbarem a zároveň spouštím druhé vlákno, které provádí náročnější operaci a průběh zobrazuje v progressbaru. Fungovalo to, ovšem pouze někdy. Tak z 80% jsem dostal SIGSEGV nebo jinou chybu. Zajímavé je, že občas to proběhlo bez chyby. Našel jsem, že pro tyto účely mám použít QThread. Ovšem nechápu jejich použití. Angličtinu louskám celkem blbě. Proto se ptám, jak je mám použít? Jako nové vlákno mám zpouštět GUI, nebo fci, která ovládá GUI? Byl bych rád, kdyby sem někdo hodil kus jednoduchého kódu. Zkoušel jsem s tím laborovat, ale nikdy se mi žádnou fci nepodařilo spustit jako vlákno.

    Odpovědi

    1.7.2007 11:59 Jan Martinek | skóre: 43 | blog: johny | Brno
    Rozbalit Rozbalit vše Re: pyQT4 a QThread
    Program v Pythonu, co dostane SIGSEGV? Ukaž ho, to se musí hlásit.
    1.7.2007 13:15 hanzz | skóre: 19 | blog: hanzz
    Rozbalit Rozbalit vše Re: pyQT4 a QThread
    Dve tridy... Jedna je samotny thread, druhe je progressdialog
    from PyQt4 import QtCore, QtGui
    import time,sys
    # vytvoreni mutexu
    mutex=QtCore.QMutex()
    
    class thread(QtCore.QThread):
    	"""
    	Thread, ktery co sekundu posune progress dialog o jeden stupen, dokud nebude na 100
    	"""
    	def __init__(self):
    		QtCore.QThread.__init__(self,None)
    
    	def run(self):
    		"""
    		Funkce, ktera je spustena po zapnuti threadu funkci start()
    		"""
    		# automaticke lockovani threadu pri praci s promennyma mimo tento thread
    		locker = QtCore.QMutexLocker(mutex)
    		i=0 # pocitadlo sekund
    		while i!=1000:
    			# ukonceni threadu pokud v progressDialogu zmenime promennou end na true
    			if win.end==True:
    				break
    			time.sleep(0.1)
    			i+=1
    			# emitovani signalu, na ktery je progressDialog napojen
    			self.emit(QtCore.SIGNAL("inc(int)"), i)
    
    class progress(QtGui.QProgressDialog):
    	"""
    	Derivovana trida progress dialogu
    	"""
    	def __init__(self):
    		"""
    		Vytvori a spusti thread a progressDialog
    		"""
    		QtGui.QProgressDialog.__init__(self,"Test dialogu","Zrusit",0,1000)
    		self.setWindowModality(QtCore.Qt.WindowModal)
    		# signaly potrebne k ukonceni threadu pri uzavreni okna a kliknuti na tlacitko pro ukonceni dialogu
    		QtCore.QObject.connect(app,QtCore.SIGNAL("lastWindowClosed() "),self._exit)
    		QtCore.QObject.connect(self,QtCore.SIGNAL("canceled() "),self._exit)
    		# vytvoreni threadu pomoci tridy thread()
    		self.thread=thread()
    		self.end=False
    		# napojeni signalu pro zvednuti stavu progressbaru na fci progressDialogu setValue(int)
    		QtCore.QObject.connect(self.thread, QtCore.SIGNAL("inc(int)"), self.setValue,QtCore.Qt.QueuedConnection)
    		# zapnuti threadu
    		self.thread.start()
    	
    	def _exit(self):
    		"""
    		Vypnuti threadu
    		"""
    		self.end=True
    		self.thread.wait()
    		app.quit()
    
    app = QtGui.QApplication(sys.argv)
    win=progress()
    win.show()
    sys.exit(app.exec_())
    
    
    1.7.2007 16:05 pepik | skóre: 16 | blog: nevim | Chlumec nad Cidlinou
    Rozbalit Rozbalit vše Re: pyQT4 a QThread
    Díky za pomoc.
    kozzi avatar 1.7.2007 13:37 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
    Rozbalit Rozbalit vše Re: pyQT4 a QThread
    No já si myslím s thread funkcemi hrál jak u pythonu tak i s těmi z Qt, ale proto co potřebuješ ty by bylo možná lepší použít QTimer je to jednoduší na pochoponí a jsou stím menší potíže. Obecně řečeno vlákna jsou dobrá, ale musejí se dobře použít.
    Linux je jako mušketýři "jeden za všechny, všichni za jednoho"

    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.