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í
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
dnes 13:42 | Pozvánky

V Praze probíhá konference Internet a Technologie 16.2, volné pokračování jarní konference sdružení CZ.NIC. Konferenci lze sledovat online na YouTube. K dispozici je také archiv předchozích konferencí.

Ladislav Hagara | Komentářů: 0
včera 22:44 | Komunita

Joinup informuje, že Mnichov používá open source groupware Kolab. V srpnu byl dokončen dvouletý přechod na toto řešení. V provozu je asi 60 000 poštovních schránek. Nejenom Kolabu se věnoval Georg Greve ve své přednášce Open Source: the future for the European institutions (SlideShare) na konferenci DIGITEC 2016, jež proběhla v úterý 29. listopadu v Bruselu. Videozáznam přednášek z hlavního sálu je ke zhlédnutí na Livestreamu.

Ladislav Hagara | Komentářů: 6
včera 15:30 | Zajímavý projekt

Společnost Jolla oznámila v příspěvku Case study: Sailfish Watch na svém blogu, že naportovala Sailfish OS na chytré hodinky. Využila a inspirovala se otevřeným operačním systémem pro chytré hodinky AsteroidOS. Použita je knihovna libhybris. Ukázka ovládání hodinek na YouTube.

Ladislav Hagara | Komentářů: 7
včera 14:15 | Nová verze

Byla vydána verze 7.1.0 skriptovacího jazyka PHP používaného zejména k vývoji dynamických webových stránek. Jedná se o první stabilní verzi nejnovější větvě 7.1. Přehled novinek v dokumentaci. Podrobnosti v ChangeLogu. K dispozici je také příručka pro přechod z PHP 7.0.x na PHP 7.1.x.

Ladislav Hagara | Komentářů: 1
včera 12:55 | Nová verze

Google Chrome 55 byl prohlášen za stabilní. Nejnovější stabilní verze 55.0.2883.75 tohoto webového prohlížeče přináší řadu oprav a vylepšení (YouTube). Opraveno bylo také 36 bezpečnostních chyb. Mariusz Mlynski si například vydělal 22 500 dolarů za 3 nahlášené chyby (Universal XSS in Blink).

Ladislav Hagara | Komentářů: 4
včera 11:55 | Pozvánky

Máte rádi svobodný software a hardware nebo se o nich chcete něco dozvědět? Přijďte na 135. sraz spolku OpenAlt, který se bude konat ve čtvrtek 8. prosince od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Sraz bude tentokrát tématický. Bude retro! K vidění budou přístroje jako Psion 5mx nebo Palm Z22. Ze svobodného hardwaru pak Openmoko nebo čtečka WikiReader. Přijďte se i vy pochlubit svými legendami, nebo alespoň na pivo. Moderní hardware má vstup samozřejmě také povolen.

xkucf03 | Komentářů: 0
včera 00:10 | Nová verze

Byla vydána verze 3.2 svobodného systému pro detekci a prevenci průniků a monitorování bezpečnosti počítačových sítí Suricata. Z novinek lze zmínit například podporu protokolů DNP3 a CIP/ENIP, vylepšenou podporu TLS a samozřejmě také aktualizovanou dokumentaci.

Ladislav Hagara | Komentářů: 0
1.12. 21:00 | Nová verze

Byla vydána beta verze Linux Mintu 18.1 s kódovým jménem Serena. Na blogu Linux Mintu jsou hned dvě oznámení. První o vydání Linux Mintu s prostředím MATE a druhé o vydání Linux Mintu s prostředím Cinnamon. Stejným způsobem jsou rozděleny také poznámky k vydání (MATE, Cinnamon) a přehled novinek s náhledy (MATE, Cinnamon). Linux Mint 18.1 bude podporován až do roku 2021.

Ladislav Hagara | Komentářů: 0
1.12. 16:42 | Nová verze

Byl vydán Devuan Jessie 1.0 Beta 2. Jedná se o druhou beta verzi forku Debianu bez systemd představeného v listopadu 2014 (zprávička). První beta verze byla vydána v dubnu letošního roku (zprávička). Jedna z posledních přednášek věnovaných Devuanu proběhla v listopadu na konferenci FSCONS 2016 (YouTube, pdf).

Ladislav Hagara | Komentářů: 0
1.12. 15:16 | Komunita

Na GOG.com začal zimní výprodej. Řada zlevněných her běží oficiálně také na Linuxu. Hru Neverwinter Nights Diamond lze dva dny získat zdarma. Hra dle stránek GOG.com na Linuxu neběží. Pomocí návodu ji lze ale rozběhnout také na Linuxu [Gaming On Linux].

Ladislav Hagara | Komentářů: 1
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (24%)
 (29%)
 (7%)
 (5%)
 (3%)
Celkem 763 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

Dotaz: PYTHON vykonávanie príkazu každých 5 sekún a práca s aplikáciou

11.5.2011 23:05 adrinko | skóre: 22
PYTHON vykonávanie príkazu každých 5 sekún a práca s aplikáciou
Přečteno: 492×
zdravím vospolok,

prosím o radu skúsenejších, používam na vykonanie príkazu každých 5 sekúnd toto: def do_event(): print "5 seconds, hurray!" s.enter(5, 1, do_event, ())

s.enter(1, 1, do_event, ()) s.run()

avšak potreboval by som niečo také, ako je vo Visual Basicku Timer, teda, že časovač bude bežať na pozadí (a v stanovenej dobe vykonávať príkazy), ale zároveň sa bude dať pracovať s aplikáciou (klikať na tlačidlá atď). sorry za blbý dotaz, ale fakt len začínam s pythonom... diky moc


Řešení dotazu:


Odpovědi

12.5.2011 00:36 l0gik | skóre: 22
Rozbalit Rozbalit vše Re: PYTHON vykonávanie príkazu každých 5 sekún a práca s aplikáciou
No na to si udělej spešl thread. Jedinej problém, kterej v tom je, že CPython (nejběžnější interpret pythonu) má GIL a tedy v každé chvíli běží pouze jeden thread (i na vícejádru). Takže ten thread na pozadí se neprobudí pravděpodobně v přesnejch intervalech, ale někdy kolem, když ho ten foreground thread pustí ke slovu. Ale víc než nějaký desítky milisekund by to bejt neměly.
12.5.2011 07:58 mimi.vx | skóre: 37 | blog: Mimi.VX | Praha
Rozbalit Rozbalit vše Re: PYTHON vykonávanie príkazu každých 5 sekún a práca s aplikáciou

to celkem resi multithread ...., a s tim ze bezi v kazde chvili jen jden thread neni moc pravdive ....

USE="-gnome -kde";turris
12.5.2011 11:45 l0gik | skóre: 22
Rozbalit Rozbalit vše Re: PYTHON vykonávanie príkazu každých 5 sekún a práca s aplikáciou
Pokud pracuje s pythoníma objektama, tak ano. Jediná šance, jak pustit na CPythonu něco simultáně jsou některé speciální knihovní funkce (tuším např. numpy to dělá), který ten zámek během běhu funkce uvolní. Pokud člověk takovou funkci nepoužívá, tak to pravda je a výsledná rychlost je znatelně horší, než když to člověk provede sekvenčně v jednom threadu (perou se o zámek atd...).
13.5.2011 19:15 mimi.vx | skóre: 37 | blog: Mimi.VX | Praha
Rozbalit Rozbalit vše Re: PYTHON vykonávanie príkazu každých 5 sekún a práca s aplikáciou

ono , vice threadu .. vice problemu ... kdekoliv , od urciteho okamziku je jejich prinos zaporny .. a lepe z thoho prece jen vychazi multiprocess

 

viz : http://wiki.python.org/moin/GlobalInterpreterLock

 

http://docs.python.org/py3k/library/multiprocessing.html

 

na napr pro python2 je zajimava knihovna "pp"

USE="-gnome -kde";turris
17.5.2011 10:39 l0gik | skóre: 22
Rozbalit Rozbalit vše Re: PYTHON vykonávanie príkazu každých 5 sekún a práca s aplikáciou
Blbina jako každé jiné takto kategorické tvrzení. Např. přepínání procesů má větší režiji než threadů apod. Proces má svoje výhody (bezpečnost), thread má svoje výhody (rychlost, sdílení dat). Tvrdit, že je jedno lepší než druhé je jako tvrdit, že fotbalový míč je lepší než koloběžka. Zkoušel jsem s koloběžkou kopat a nešlo mi to.

*JOKE* Tvrzení, že thready jsou blbost pochází od zapřísáhlých pythonistů, kteří se jinak neumí smířit s tím, že python je prostě od základu navrženej blbě a toho dědictví se jen tak nezbaví. (I když Unladen swallow je vcelku slibný projekt.) */JOKE*

PS: Btw. tvrdit, že GIL je kvůli optimalizaci (u interpretovaného jazyka, kterej se na výkonostně kritický aplikace nepoužívá) je prostě blbina. Bylo to prostě jednodušší na implmentaci, stejně jako např. reference counting garbage collector a další. To není žádná ostuda (někdy je lepší věc odfláknout, ale dokončit), ostuda je, jak se to "okecává".
pavlix avatar 17.5.2011 12:47 pavlix | skóre: 53 | blog: pavlix
Rozbalit Rozbalit vše Re: PYTHON vykonávanie príkazu každých 5 sekún a práca s aplikáciou
V Pythonu dělám docela rád... ale se vším, co tady píšeš se stotožňuju :).
GentooFedoraSCRAM – Jsem open source vývojář, nikoli markeťák ⇒ názory zde uvedené jsou jen mé vlastní.
17.5.2011 13:06 l0gik | skóre: 22
Rozbalit Rozbalit vše Re: PYTHON vykonávanie príkazu každých 5 sekún a práca s aplikáciou
Přesně. Mě se ten jazyk taky hodně líbí a o to víc mě GIL štve. :-) Kdyby to byl blbej jazyk, tak mě to tak nevadí. Numpy a podobný výpočty do JPythonu bez GILu bohužel nepřeklopím.
pavlix avatar 17.5.2011 14:41 pavlix | skóre: 53 | blog: pavlix
Rozbalit Rozbalit vše Re: PYTHON vykonávanie príkazu každých 5 sekún a práca s aplikáciou
Chápu.
GentooFedoraSCRAM – Jsem open source vývojář, nikoli markeťák ⇒ názory zde uvedené jsou jen mé vlastní.
21.5.2011 17:53 mimi.vx | skóre: 37 | blog: Mimi.VX | Praha
Rozbalit Rozbalit vše Re: PYTHON vykonávanie príkazu každých 5 sekún a práca s aplikáciou

to ze thready jsou blbost tvrdili ti co vytvorili unix uz 30 let pred Pythonem ......

USE="-gnome -kde";turris
Pavel Stárek avatar 12.5.2011 12:24 Pavel Stárek | skóre: 43 | blog: Tady bloguju já :-) | Kolín
Rozbalit Rozbalit vše Re: PYTHON vykonávanie príkazu každých 5 sekún a práca s aplikáciou
Nevím jaký používáš GUI toolkit, ale v PyGTK to jde řešit třeba tak:
#!/usr/bin/env python
#-*- coding: utf-8 -*-

import pygtk
pygtk.require("2.0")
import gtk
import gobject

def kazdych_5_sekund():
  print "Toto je po 5 vterinach!!!"
  return True     # Toto způsobí že se toto bude opakovat každých 5s, False - provede se pouze jednou

def button_clicked(widget,data):
  print "Button clicknut!!!"
  
# Vytvoříme nové okno
window = gtk.Window()

# Tady spojíme událost "delete-event" (zavření okna)
# s ukončením programu pomoí zavolání gtk.main_quit,
# která zapříčiní ukončení hlavní programové smyčky gtk.main()
window.connect("delete-event", gtk.main_quit)
window.set_border_width(10)
window.set_title("Timer 5 sekund")

# Vytvoříme nový popisek s popisem "Ahoj světe!!!"
button = gtk.Button("Ahoj světe!!!")
button.connect("clicked", button_clicked, None)
#label = gtk.Label("Ahoj světe!!!")
# A popisek připojíme do hlavního okna, které funguje jako kontejner
window.add(button)

# Tímto prohlásíme okno za připravené ke zobrazení
window.resize(200,80)
window.show_all()

# Tímto si vyrobíme "timer" po 5 sekundách
# timer_id lze využít pro "vypnutí" timeru pomocí gobject.source_remove(timer_id)
timer_id = gobject.timeout_add(5000, kazdych_5_sekund)

# A spustíme hlavní programovou smyčku
gtk.main()
Kdo chce, hledá způsob; kdo nechce, hledá důvod.
16.5.2011 23:12 adrinko | skóre: 22
Rozbalit Rozbalit vše Re: PYTHON vykonávanie príkazu každých 5 sekún a práca s aplikáciou
vďaka, super príklad! nahodil som si pygtk-all-in-one-2.24.0.win32-py2.7 a vyskúšal tvoj príklad. akurát neviem prečo mi riadok pygtk.require("2.0") spôsobuje attributeerror: 'module' object has no attribute 'require'
17.5.2011 00:35 adrinko | skóre: 22
Rozbalit Rozbalit vše Re: PYTHON vykonávanie príkazu každých 5 sekún a práca s aplikáciou
attributeerror zahadne zmizol :)
21.5.2011 12:02 GdH
Rozbalit Rozbalit vše Re: PYTHON vykonávanie príkazu každých 5 sekún a práca s aplikáciou
Pokud si nazveš svůj skript pygtk.py a pak v něm importuješ pygtk - hádej, co se naimportuje místo toho, co očekáváš ;)
21.5.2011 12:27 adrinko | skóre: 22
Rozbalit Rozbalit vše Re: PYTHON vykonávanie príkazu každých 5 sekún a práca s aplikáciou
áno, medzičasom mi toto svitlo v hlave :)
16.5.2011 23:27 adrinko | skóre: 22
Rozbalit Rozbalit vše Re: PYTHON vykonávanie príkazu každých 5 sekún a práca s aplikáciou
btw, keď kliknem na x-ko na uzavretie programu, pôvodné okno s buttonom sa zavrie ale otvorí sa ďalšie s rovnakým buttonom, a každých 5 sekúnd sa vypisujú dvakrát "Toto je po 5 vterinach!!!" je toto chovanie normálne? nemal by skončiť celý program a nepokračovať ďalej?
17.5.2011 00:11 adrinko | skóre: 22
Rozbalit Rozbalit vše Re: PYTHON vykonávanie príkazu každých 5 sekún a práca s aplikáciou
>> btw, keď kliknem na x-ko na uzavretie programu, pôvodné okno s buttonom sa zavrie ale otvorí sa ďalšie s rovnakým buttonom

toto bola chyba pomenovaneho suboru pygtk.py a preto sa y nejakeho dovodu spustal znova. teraz zostava, aby som prisiel na to, ako po kliknuti na xko vypnut aj timer (aby v konzole nevypisoval kazdych 5 sekund text)
Pavel Stárek avatar 17.5.2011 10:24 Pavel Stárek | skóre: 43 | blog: Tady bloguju já :-) | Kolín
Rozbalit Rozbalit vše Re: PYTHON vykonávanie príkazu každých 5 sekún a práca s aplikáciou
A co takhle:
#!/usr/bin/env python
#-*- coding: utf-8 -*-

import pygtk
pygtk.require("2.0")
import gtk
import gobject


def ukoncit(widget, data, timer_id):
  gobject.source_remove(timer_id)
  gtk.main_quit()

def kazdych_5_sekund():
  print "Toto je po 5 vterinach!!!"
  return True     # Toto způsobí že se toto bude opakovat každých 5s, False - provede se pouze jednou

def button_clicked(widget,data):
  print "Button clicknut!!!"
  
# Tímto si vyrobíme "timer" po 5 sekundách
# timer_id lze využít pro "vypnutí" timeru pomocí gobject.source_remove(timer_id)
timer_id = gobject.timeout_add(5000, kazdych_5_sekund)

# Vytvoříme nové okno
window = gtk.Window()

# Tady spojíme událost "delete-event" (zavření okna)
# s funkcí ukoncit()
# která zapříčiní ukončení hlavní programové smyčky gtk.main()
window.connect("delete-event", ukoncit, timer_id)
window.set_border_width(10)
window.set_title("Timer 5 sekund")

# Vytvoříme nový popisek s popisem "Ahoj světe!!!"
button = gtk.Button("Ahoj světe!!!")
button.connect("clicked", button_clicked, None)
#label = gtk.Label("Ahoj světe!!!")
# A popisek připojíme do hlavního okna, které funguje jako kontejner
window.add(button)

# Tímto prohlásíme okno za připravené ke zobrazení
window.resize(200,80)
window.show_all()


# A spustíme hlavní programovou smyčku
gtk.main()
Kdo chce, hledá způsob; kdo nechce, hledá důvod.

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.