Python/wxPython Reducing memory usage.

Discussion in 'Python' started by lotmr, Apr 9, 2005.

  1. lotmr

    lotmr Guest

    I have previously posted a simple app I am working on, and while I love
    python and wxWindows, after checking the memory usage on such a simple
    app (system try application launcher) I see that it climbs to over
    17mb! I have reduced all my imports to the bare workable minimum and
    that just gets it under 17mb. Is there any way that I could compile or
    optimize the my program and/or its memory usage?
    (Note: I don't have a problem with making this program win32 specific,
    as it already is only win32)


    CODE:
    #this section broken down soley for readability, normally one line
    from wxPython.wx import wxMessageDialog,wxFrame,wxMenu,
    wxBitmap,wxOK,wxID_ANY,wxID_EXIT,wxID_ABOUT,
    wxBITMAP_TYPE_ICO,wxBITMAP_TYPE_PNG,wxMenuItem,
    wxPySimpleApp,wxTaskBarIcon,wxIcon,EVT_TASKBAR_RIGHT_UP,EVT_MENU
    #end

    from os import startfile
    from sys import exit

    class MainWindow(wxFrame):
    def OnAbout (self, event):
    m = wxMessageDialog( self, " LUNCH Bar 0.1 \n"
    " A launch bar written in Python using
    wxWindows","About LUNCH", wxOK)
    m.ShowModal()
    m.Destroy
    def OnExit (self, event):
    self.tbi.Destroy()
    exit()
    def OnTrayRight (self, event):
    self.PopupMenu(self.rhtmenu)
    def OnLaunch (self, event):
    print event.GetString()
    path = 'D:\Program Files\Mozilla Firefox\Firefox.exe'
    startfile(path)
    def __init__(self,parent,id,title):
    wxID_FIREFOX = 1117
    wxFrame.__init__(self,parent,wxID_ANY, title, size = (
    200,100))
    self.tbi = wxTaskBarIcon()
    icon = wxIcon('package.ico',wxBITMAP_TYPE_ICO)
    self.tbi.SetIcon(icon, '')
    self.rhtmenu = wxMenu()
    icon = wxBitmap(name = 'ffico.png', type = wxBITMAP_TYPE_PNG)
    item = wxMenuItem(parentMenu = self.rhtmenu, id = wxID_FIREFOX,
    text='Firefox')
    item.SetBitmap(icon)
    self.rhtmenu.Append(wxID_EXIT, "&Exit"," Terminate this program")
    self.rhtmenu.Append(wxID_ABOUT, "&About"," Information about this
    program")
    self.rhtmenu.AppendSeparator()
    self.rhtmenu.AppendItem(item)
    EVT_TASKBAR_RIGHT_UP(self.tbi, self.OnTrayRight)
    EVT_MENU(self, wxID_ABOUT, self.OnAbout)
    EVT_MENU(self, wxID_EXIT, self.OnExit)
    EVT_MENU(self, wxID_FIREFOX, self.OnLaunch)


    appwin = wxPySimpleApp()
    frame = MainWindow(None, -1, "Small editor")
    appwin.MainLoop()
     
    lotmr, Apr 9, 2005
    #1
    1. Advertising

  2. lotmr

    Joe Guest

    On 8 Apr 2005 23:35:57 -0700, "lotmr" <> wrote:
    >Is there any way that I could compile or optimize the my program and/or its memory usage?


    .... and ideally, if we could also reduce the size of the DLL, so that
    it would only include the widgets actually used, it'd be even nicer.

    >(Note: I don't have a problem with making this program win32 specific,
    >as it already is only win32)


    I don't have much experience with it, but is the PythonWin wrapper to
    MFC horrible to use as compared to wxWidgets? If it's good enough and
    you don't care about non-Windows platforms, you'll probably save a lot
    of RAM and file footprint.

    Joe.
     
    Joe, Apr 9, 2005
    #2
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. metfan
    Replies:
    2
    Views:
    4,874
    Robert Olofsson
    Oct 21, 2003
  2. Replies:
    0
    Views:
    388
  3. hvt
    Replies:
    0
    Views:
    1,229
  4. hvt
    Replies:
    0
    Views:
    1,517
  5. Krist
    Replies:
    8
    Views:
    6,773
    Arne Vajhøj
    Feb 10, 2010
Loading...

Share This Page