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í
×
    včera 20:44 | Zajímavý článek

    Jean-Baptiste Kempf na svém blogu představil novou verzi 9.0 "Lei" kolekce svobodného softwaru umožňujícího nahrávání, konverzi a streamovaní digitálního zvuku a obrazu FFmpeg (Wikipedie).

    Ladislav Hagara | Komentářů: 0
    včera 20:11 | Komunita

    Richard Hughes oznámil, že službu Linux Vendor Firmware Service (LVFS) umožňující aktualizovat firmware zařízení na počítačích s Linuxem, nově sponzoruje také společnost NVIDIA.

    Ladislav Hagara | Komentářů: 0
    včera 12:22 | Zajímavý software

    Edvard Rejthar na blogu zaměstnanců CZ.NIC představil svou aplikaci SlideRshow (GitHub). Funguje jako prohlížeč fotek, ale i jako jejich organizér a prezentátor. Neinstaluje se, běží přímo v prohlížeči. Bez serveru. Offline.

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

    Kermit, tj. protokol pro přenos souborů, vznikl před 45 lety. Při této příležitosti byla po 15 letech od vydání poslední stabilní verze 9.0.302 vydána nová stabilní verze 11 implementace C-Kermit. S podporou IPv6.

    Ladislav Hagara | Komentářů: 0
    včera 11:11 | Zajímavý článek

    První verze konverzního nástroje Pandoc byla vydána před 20 lety. Jeho autor John MacFarlane při tomto výročí rekapituluje jednotlivé etapy vývoje a přidávání nových funkcí – rozšíření nejen Markdownu a podporu mnoha dalších formátů.

    |🇵🇸 | Komentářů: 0
    včera 00:55 | Pozvánky

    Srpen přinesl nejen další spalující vedro, ale také Virtuální Bastlírnu s neméně žhavými novinkami. Využijte tedy předpovědi na deštivý čtvrteční večer a od 20:00 se připojte online k tomuto neformálnímu setkání kutilů, techniků a vědců, kde se strahovskými bastlíři proberete nejzajímavější věci, na které jste narazili za poslední měsíc. Pokud jde o novinky, řeč zcela jistě přijde na systém INDX pro tiskárny Průša, který na konci

    … více »
    bkralik | Komentářů: 0
    3.8. 17:22 | Zajímavý článek

    Firma T-Mobile blokovala „dezinformační web“ AC24 bez toho, aniž by k tomu měla závazný pokyn orgánů veřejné moci. Píše to ve svém rozsudku Městský soud v Praze, který po čtyřech letech uzavřel kauzu blokace zmíněného webu. Operátor musí uhradit škodu ve výši 35 tisíc korun. Advokát společnosti T-Mobile se snažil i u odvolacího senátu argumentovat tím, že firma jednala v dobré víře, když na stránky omezila přístup poté, co ji k tomu vyzvalo

    … více »
    Ladislav Hagara | Komentářů: 22
    3.8. 16:33 | IT novinky

    Padla obžaloba v bitcoinové kauze. Státní zástupkyně chce pro Blažka 6,5 roku vězení, pro Titze 8 let.

    Ladislav Hagara | Komentářů: 1
    3.8. 15:22 | IT novinky Ladislav Hagara | Komentářů: 3
    3.8. 14:22 | Komunita

    Na GitHubu byl publikován seznam 55 kritických bezpečnostních chyb v SQLite s přiřazenými CVE čísly. JFrog Security informuje, že se jedná jenom o AI slop, části kódu na které CVE odkazují, v daných verzích vůbec neexistují. Upozorňuje také, že čísla CVE jsou přiřazována bez ověřování.

    Ladislav Hagara | Komentářů: 5
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (7%)
     (2%)
     (18%)
     (30%)
     (6%)
     (6%)
     (2%)
     (15%)
     (23%)
    Celkem 2322 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: python memory leak

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

    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.