Experimental Physics and Industrial Control System
Dear Noboru,
Thank you. I must say the KEK CaPython314 is very easy to use.
I am not surprised that your little test below won't crash,
since it does not contain a wx.Timer. In order to repeat my
crash, a wx.Timer must be constructed, it must be bound to a
onTimer function, and it must be started. Using
threading.Timer instead of wx.Timer will not cause the crash.
I cannot tell who is guilty, wx.Timer or CaPython314. I also
have the feeling that Python 2.5 may be the problem.
Zhong
---- Original message ----
>Date: Wed, 06 Dec 2006 10:47:29 +0900
>From: Noboru Yamamoto <[email protected]>
>Subject: Re: wxPython timer and KEK CaPython314 cause core dump
>To: [email protected]
>Cc: [email protected]
>
>Hi,
>
>I'm not familiar with WxPytho (yet).
>
>But, the following code works on MacBook running MacOSX
10.4.8 with
>Python2.5,
wxPython2.7-osx-unicode-2.7.2.0-universal10.4-py2.5.dmg
>and KEK version of CaPython314 ( I should have used the
different name
>to avoid confusion with FNAL version. Sorry).
>
>######################################
>import wx,ca
>
>class MyApp(wx.PySimpleApp):
> def OnInit(self):
> frame = wx.Frame(None, -1, "Hello from wxPython")
> frame.Show(True)
> self.frame=frame
> self.ch=ca.channel("fred")
> self.ch.wait_conn()
> self.ch.monitor(self.ca_callback)
> self.ch.flush()
> self.SetTopWindow(frame)
> return True
>
> def ca_callback(self,valstat):
> self.ch.update_val(valstat)
> self.frame.Title="%s:%f"%(self.ch.name,self.ch.val)
>
>if __name__ == "__main__":
> app = MyApp(0)
> app.MainLoop()
>
>#############################################
>
>I hope this can give some idea.
>Regards,
>
>Noboru Yamamoto
>EPICS group/J-PARC control group
>KEK, JAPAN
>
>Zhong Ren wrote:
>> I managed to isolate a core dump in a minimized Python code
>> (see below). I found two components are essential to cause a
>> core dump: wx.Timer and ca.Monitor (or ca.Get). Can someone
>> tell what the problem is?
>>
>> ###############################################
>> import wx
>> import ca
>>
>> def onTimer(event): pass
>>
>> ca.Monitor('S:SRcurrentAI')
>>
>> appli = wx.PySimpleApp()
>> frame = wx.Frame(None)
>> timer = wx.Timer()
>> timer.Bind(wx.EVT_TIMER, onTimer)
>> timer.Start(milliseconds = 10, oneShot = False)
>> appli.MainLoop()
>> ###############################################
>>
>> Other info:
>> Pyhton 2.5
>> wxPython 2.6.3.3
>> RedHat Linux x86_64
>> GCC 4.1.1
>>
>> To test, let the routine run for a while. A core dump will
>> occur in a few minutes.
>
>________________
- Replies:
- Re: wxPython timer and KEK CaPython314 cause core dump Noboru Yamamoto
- Navigate by Date:
- Prev:
RE: JCA, Gateways and EPICS_CA_ADDR_LIST Rees, NP (Nick)
- Next:
RE: Problems with Channel Access calls on an IOC moving from R3.13.7 -> 3.14.8 Jeff Hill
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
<2006>
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
wxPython timer and KEK CaPython314 cause core dump Matt Newville
- Next:
Re: wxPython timer and KEK CaPython314 cause core dump Noboru Yamamoto
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
<2006>
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024