[IronPython] System.Windows.Forms.MethodInvoker

Dino Viehland dinov at exchange.microsoft.com
Wed May 14 04:05:20 CEST 2008

Where'd the call to Console.ReadLine go?  That's the reason you don't see Finished printing...  On 1.1 and 2.0B2 from the console or in a file w/ a call to Console.ReadLine or raw_input I end up seeing finished getting printed.  We're simply exiting before the asynchronous operation but that doesn't fully answer the question - started is still never printing!  Stranger yet you can call mi() directly showing the delegate is clearly created correctly and working.  Anyway, I'll have to look at it closer - it might require windbg to figure out what's going wrong here.

From: users-bounces at lists.ironpython.com [mailto:users-bounces at lists.ironpython.com] On Behalf Of Matthew Barnard
Sent: Tuesday, May 13, 2008 5:39 PM
To: IronPython List
Subject: [IronPython] System.Windows.Forms.MethodInvoker

The C# sample runs as expected, displaying 'Started. Finished.', but the ipy does nothing.
Can someone enlighten me as to the difference? I assume it is something to do with the way functions are represented in ipy vs. what methodinvoker is looking for,
but I'm honestly lost.


class foo
        public void start()

        public void finish(IAsyncResult r)

    class Program
        static void Main(string[] args)
            foo bar = new foo();

            MethodInvoker mi = new MethodInvoker(bar.start);
            mi.BeginInvoke(new AsyncCallback(bar.finish), null);



import clr


from System import AsyncCallback
from System.Threading import Thread
from System.Windows.Forms import MethodInvoker

class foo:
    def start(self):
        print 'Started.'

    def finish(self, r):
        print 'Finished.'

bar = foo()
mi = MethodInvoker(bar.start)
mi.BeginInvoke(AsyncCallback(bar.finish), None)

Matthew Barnard
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ironpython-users/attachments/20080513/2455e8ce/attachment.html>

More information about the Ironpython-users mailing list