>Looks like the event object goes straight to pinvokes,
so a null result just crashes?
If it’s null, you should get a NullReferenceException.
The C# compiler should callvirt the property getter and that’ll do a null
check. If that isn’t happening, that’d be an interesting
optimization somewhere along the line.
-Michael
From: freeswitch-users-bounces@lists.freeswitch.org
[mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of Josh
Rivers
Sent: Wednesday, September 09, 2009 3:01 PM
To: freeswitch-users@lists.freeswitch.org
Subject: Re: [Freeswitch-users] Subscribing to events in managed C# /
.NET
A new discovery:
public bool Load()
{
ThreadPool.QueueUserWorkItem((o) =>
{
Log.WriteLine(LogLevel.Notice, "Thread Starting. ");
EventConsumer con = new EventConsumer("all", "");
while (true)
{
Event ev = con.pop(0);
if (ev == null) continue;
Log.WriteLine(LogLevel.Notice, "Event: " +
ev.serialized_string);
}
});
return true;
}
Does not crash. (Adding the null check prevents crash.) The
backgrounded loop runs fine. Looks like the event object goes straight to
pinvokes, so a null result just crashes?
I like the idea of a 'startup-script' for mod_managed. It
would also be excellent if there was an event or message informing the
background code to terminate nicely when the module reloads.
--Josh
On Wed, Sep 9, 2009 at 12:57 PM, Jeff Lenk <jlenk@frontiernet.net> wrote:
I think the problem here is that the loader only keeps this method in scope
until completion then it drops the remoted connection. Therefore you should
not use threads in this method. Michael please correct me if I am wrong
here.
As an example of the failure simply just put a Sleep(10000) call in the
thread and you will see the failure.
As Michael said this method was only designed to allow the option to opt out
of being loaded.
In order to support this perhaps a configuration flag simular to the lua
"startup-script" should be added.
Here is the error I get with the loop I mentioned. -Josh
[image: Capture.PNG]
On Tue, Sep 8, 2009 at 5:05 AM, Michael Giagnocavo
<mgg@giagnocavo.net>wrote:
> Hi,
>
>
>
> Can you please
elaborate on the crash you receive when you
> queue a thread during load?
>
>
>
> Thanks,
>
> Michael
>
>
--
View this message in context: http://n2.nabble.com/Subscribing-to-events-in-managed-C-NET-tp3573619p3613195.html
Sent from the freeswitch-users mailing list archive at Nabble.com.
_______________________________________________
FreeSWITCH-users mailing list
FreeSWITCH-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org