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 03:00 | Komunita

    Na stránkách Evropské komise, na portálu Podělte se o svůj názor, se lze do 3. února podělit o názor k iniciativě Evropské otevřené digitální ekosystémy řešící přístup EU k otevřenému softwaru.

    Ladislav Hagara | Komentářů: 1
    včera 19:44 | Zajímavý software

    Společnost Kagi stojící za stejnojmenným placeným vyhledávačem vydala (𝕏) alfa verzi linuxové verze (flatpak) svého proprietárního webového prohlížeče Orion.

    Ladislav Hagara | Komentářů: 4
    včera 19:11 | IT novinky

    Firma Bose se po tlaku uživatelů rozhodla, že otevře API svých chytrých reproduktorů SoundTouch, což umožní pokračovat v jejich používání i po plánovaném ukončení podpory v letošním roce. Pro ovládání také bude stále možné využívat oficiální aplikaci, ale už pouze lokálně bez cloudových služeb. Dokumentace API dostupná zde (soubor PDF).

    NUKE GAZA! 🎆 | Komentářů: 0
    včera 14:22 | Zajímavý článek

    Jiří Eischmann se v příspěvku na svém blogu rozepsal o open source AdGuard Home jako domácí ochraně nejen před reklamou. Adguard Home není plnohodnotným DNS resolverem, funguje jako DNS forwarder s možností filtrování. To znamená, že když přijme DNS dotaz, sám na něj neodpoví, ale přepošle ho na vybraný DNS server a odpovědi zpracovává a filtruje dle nastavených pravidel a následně posílá zpět klientům. Dá se tedy používat k blokování reklamy a škodlivých stránek a k rodičovské kontrole na úrovni DNS.

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

    AI Claude Code od Anthropicu lépe rozumí frameworku Nette, tj. open source frameworku pro tvorbu webových aplikací v PHP. David Grudl napsal plugin Nette pro Claude Code.

    Ladislav Hagara | Komentářů: 1
    včera 00:11 | Nová verze

    Byla vydána prosincová aktualizace aneb nová verze 1.108 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.108 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    8.1. 20:44 | IT novinky

    Na lasvegaském veletrhu elektroniky CES byl předveden prototyp notebooku chlazeného pomocí plazmových aktuátorů (DBD). Ačkoliv se nejedná o první nápad svého druhu, nepochybně to je první ukázka praktického použití tohoto způsobu chlazení v běžné elektronice. Co činí plazmové chladící akční členy technologickou výzvou je především vysoká produkce jedovatého ozonu, tu se prý podařilo firmě YPlasma zredukovat dielektrickou

    … více »
    NUKE GAZA! 🎆 | Komentářů: 8
    8.1. 16:33 | Zajímavý projekt

    Patchouli je open source implementace EMR grafického tabletu (polohovací zařízení). Projekt je hostován na GitLabu.

    Ladislav Hagara | Komentářů: 0
    8.1. 14:11 | IT novinky

    Český Nejvyšší soud potvrdil, že česká právní úprava plošného uchování dat o elektronické komunikaci porušuje právo Evropské unie. Pravomocným rozsudkem zamítl dovolání ministerstva průmyslu a obchodu. To se teď musí omluvit novináři Českého rozhlasu Janu Cibulkovi za zásah do práv na ochranu soukromí a osobních údajů. Ve sporu jde o povinnost provozovatelů sítí uchovávat údaje, ze kterých lze odvodit, kdo, s kým a odkud komunikoval.

    Ladislav Hagara | Komentářů: 17
    8.1. 02:11 | Komunita

    Google bude vydávat zdrojové kódy Androidu pouze dvakrát ročně. Ve 2. a 4. čtvrtletí.

    Ladislav Hagara | Komentářů: 1
    Které desktopové prostředí na Linuxu používáte?
     (3%)
     (5%)
     (0%)
     (9%)
     (21%)
     (4%)
     (5%)
     (3%)
     (11%)
     (53%)
    Celkem 320 hlasů
     Komentářů: 7, poslední 8.1. 15:35
    Rozcestník

    Dotaz: python memory leak

    6.11.2017 13:45 marek
    python memory leak
    Přečteno: 750×

    Dobry den.

    Spotreba pameti tohoto programku s casem roste:

    #!/usr/bin/env python3
    import gi,signal
    gi.require_version('Gtk', '3.0')
    gi.require_version('AppIndicator3', '0.1')
    from gi.repository import AppIndicator3, GLib, Gtk
    from xkbgroup import XKeyboard
    class IndicatorTestIcon:
        NAME = ""
        xkb = XKeyboard()
        def __init__( self ):
            self.indicator = AppIndicator3.Indicator.new( "xkb", self.getIconName(), AppIndicator3.IndicatorCategory.APPLICATION_STATUS )
            self.indicator.set_status( AppIndicator3.IndicatorStatus.ACTIVE )
            self.buildMenu()
        def main( self ):
            GLib.timeout_add(500, self.update )
            Gtk.main()
            return True
        def update( self ):
            if self.xkb.group_symbol+self.xkb.group_variant != self.NAME:
                self.indicator.set_icon_full( self.getIconName(), "" )
            self.NAME = self.xkb.group_symbol+self.xkb.group_variant
            return True
        def buildMenu( self ):
            menu = Gtk.Menu()
            for x in range(0, self.xkb.groups_count):
                if self.xkb.groups_variants[x] :
                    name = self.xkb.groups_symbols[x]+"("+self.xkb.groups_variants[x]+")"
                else:
                    name = self.xkb.groups_symbols[x]
                item = Gtk.MenuItem(name)
                item.connect('activate', self.ac, x)
                menu.append(item)
                del item
            self.indicator.set_menu( menu )
            menu.show_all()
            del menu
            return True
        def ac(self, source, ic):
            self.buildMenu()
            self.xkb.group_num=ic
            return True
        def getIconName( self ):
            if self.xkb.group_variant != "" :
                return "/usr/local/sbin/kbdata/"+self.xkb.group_symbol+"("+self.xkb.group_variant+").xpm"
            return "/usr/local/sbin/kbdata/"+self.xkb.group_symbol+".xpm"
    signal.signal(signal.SIGINT, signal.SIG_DFL)
    if __name__ == "__main__": IndicatorTestIcon().main()

    Mam to pusteno trikrat, prvni proces bezi 2 dny, druhu par sekund, treti par hodin:

    <[user@localhost ~]$ ps -C python3 -o pid --no-headers| xargs -l1 pmap -x 14752 | grep  total
    [user@localhost ~]$
    total kB          894988  295364  252572
    total kB          572488   43616   17300
    total kB          582132   53288   26956
    [user@localhost ~]$
    

    Jak je mozne, ze se spotreba pameti tolik lisi, cim tomu zabranit?

    Programek zobrazuje v tray aktualni rozlozeni klavesnice - jak to pripadne udelat lepe?

    Dekuji.

    marek

    Řešení dotazu:


    Odpovědi

    6.11.2017 18:04 ehmmm
    Rozbalit Rozbalit vše Re: python memory leak
    Takhle laicky na prvni pohled se nabizi prozkoumat chovani set_icon_full().
    7.11.2017 13:18 marek
    Rozbalit Rozbalit vše Re: python memory leak

    Dekuji za odpoved.

    po zkoumani jsem zjistil, ze spotreba pameti roste i kdyz to ocesam pouze na:

    #!/usr/bin/env python3
    from xkbgroup import XKeyboard
    import time
    
    while True:
        xkb = XKeyboard()
        time.sleep(0.1)
        del xkb

    Takze chyba snad nalezena...

    marek

    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.