You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by Czaban <c...@dgt.com.pl> on 2010/03/01 23:49:42 UTC

NMS\Apache.NMS\tags\1.2.0 not working under Windows 2000

NMS\Apache.NMS\tags\1.2.0 used method form .NET .NET Framework 2.0 service
pack 2 - windows 2000 can working with .NET .NET Framework 2.0 service pack
1 only - work around seems to be simply - please consider this problem.


System.MissingMethodException: Method not found: 'Boolean
System.Threading.WaitHandle.WaitOne(System.TimeSpan)'.
   at Apache.NMS.ActiveMQ.Transport.InactivityMonitor.StopMonitorThreads()
   at Apache.NMS.ActiveMQ.Transport.InactivityMonitor.OnException(ITransport
sender, Exception command)
   at Apache.NMS.ActiveMQ.Transport.Tcp.TcpTransport.ReadLoop()
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.Run(ExecutionContext
executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart() 

-- 
View this message in context: http://old.nabble.com/NMS%5CApache.NMS%5Ctags%5C1.2.0-not-working-under-Windows-2000-tp27750135p27750135.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Re: NMS\Apache.NMS\tags\1.2.0 not working under Windows 2000

Posted by Timothy Bish <ta...@gmail.com>.
On Tue, 2010-03-02 at 04:07 -0800, Czaban wrote:
> 
> 
> Timothy Bish wrote:
> > 
> > If you want to come p with a patch and attach it to a Jira issue we can
> > take
> > a look at it.
> > 
> > On Mon, Mar 1, 2010 at 5:49 PM, Czaban <c...@dgt.com.pl> wrote:
> > 
> >>
> >> NMS\Apache.NMS\tags\1.2.0 used method form .NET .NET Framework 2.0
> >> service
> >> pack 2 - windows 2000 can working with .NET .NET Framework 2.0 service
> >> pack
> >> 1 only - work aroIf you want to und seems to be simply - please consider
> >> this problem.
> >>
> >>
> >> System.MissingMethodException: Method not found: 'Boolean
> >> System.Threading.WaitHandle.WaitOne(System.TimeSpan)'.
> >>   at Apache.NMS.ActiveMQ.Transport.InactivityMonitor.StopMonitorThreads()
> >>   at
> >> Apache.NMS.ActiveMQ.Transport.InactivityMonitor.OnException(ITransport
> >> sender, Exception command)
> >>   at Apache.NMS.ActiveMQ.Transport.Tcp.TcpTransport.ReadLoop()
> >>   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
> >>   at System.Threading.ExecutionContext.Run(ExecutionContext
> >> executionContext, ContextCallback callback, Object state)
> >>   at System.Threading.ThreadHelper.ThreadStart()
> >>
> >> --
> >> View this message in context:
> >> http://old.nabble.com/NMS%5CApache.NMS%5Ctags%5C1.2.0-not-working-under-Windows-2000-tp27750135p27750135.html
> >> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
> >>
> >>
> > 
> > 
> 
> Jira is not know to me.
> 
>  private void StopMonitorThreads()
>         {
>             lock(monitor)
>             {
>                 if(monitorStarted.CompareAndSet(true, false))
>                 {
>                     AutoResetEvent shutdownEvent = new
> AutoResetEvent(false);
> 
>                     // Attempt to wait for the Timers to shutdown, but don't
> wait
>                     // forever, if they don't shutdown after two seconds,
> just quit.
>                     this.readCheckTimer.Dispose(shutdownEvent);
>                     shutdownEvent.WaitOne(TimeSpan.FromMilliseconds(2000));
>                     this.writeCheckTimer.Dispose(shutdownEvent);
>                     shutdownEvent.WaitOne(TimeSpan.FromMilliseconds(2000));
> 
> 					this.asyncTasks.Shutdown();
>                     this.asyncTasks = null;
>                     this.asyncWriteTask = null;
>                     this.asyncErrorTask = null;
>                 }
>             }
>         }
> 
> just add bool true argument to
> shutdownEvent.WaitOne(TimeSpan.FromMilliseconds(2000));
> like that:
> 
>  private void StopMonitorThreads()
>         {
>             lock(monitor)
>             {
>                 if(monitorStarted.CompareAndSet(true, false))
>                 {
>                     AutoResetEvent shutdownEvent = new
> AutoResetEvent(false);
> 
>                     // Attempt to wait for the Timers to shutdown, but don't
> wait
>                     // forever, if they don't shutdown after two seconds,
> just quit.
>                     this.readCheckTimer.Dispose(shutdownEvent);
>                    
> shutdownEvent.WaitOne(TimeSpan.FromMilliseconds(2000),true);
>                     this.writeCheckTimer.Dispose(shutdownEvent);
>                    
> shutdownEvent.WaitOne(TimeSpan.FromMilliseconds(2000),true);
> 
> 					this.asyncTasks.Shutdown();
>                     this.asyncTasks = null;
>                     this.asyncWriteTask = null;
>                     this.asyncErrorTask = null;
>                 }
>             }
>         }
> 
> and Windows 2000 is back to the business with ActiveMQ under C#.
> 
> 
> 
> 

Applied a fix for this to the NMS.ActiveMQ trunk and 1.2 fixes branch.  

Regards

-- 
Tim Bish

Open Source Integration: http://fusesource.com
ActiveMQ in Action: http://www.manning.com/snyder/

Follow me on Twitter: http://twitter.com/tabish121
My Blog: http://timbish.blogspot.com/


Re: NMS\Apache.NMS\tags\1.2.0 not working under Windows 2000

Posted by Czaban <c...@dgt.com.pl>.


Timothy Bish wrote:
> 
> If you want to come p with a patch and attach it to a Jira issue we can
> take
> a look at it.
> 
> On Mon, Mar 1, 2010 at 5:49 PM, Czaban <c...@dgt.com.pl> wrote:
> 
>>
>> NMS\Apache.NMS\tags\1.2.0 used method form .NET .NET Framework 2.0
>> service
>> pack 2 - windows 2000 can working with .NET .NET Framework 2.0 service
>> pack
>> 1 only - work aroIf you want to und seems to be simply - please consider
>> this problem.
>>
>>
>> System.MissingMethodException: Method not found: 'Boolean
>> System.Threading.WaitHandle.WaitOne(System.TimeSpan)'.
>>   at Apache.NMS.ActiveMQ.Transport.InactivityMonitor.StopMonitorThreads()
>>   at
>> Apache.NMS.ActiveMQ.Transport.InactivityMonitor.OnException(ITransport
>> sender, Exception command)
>>   at Apache.NMS.ActiveMQ.Transport.Tcp.TcpTransport.ReadLoop()
>>   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
>>   at System.Threading.ExecutionContext.Run(ExecutionContext
>> executionContext, ContextCallback callback, Object state)
>>   at System.Threading.ThreadHelper.ThreadStart()
>>
>> --
>> View this message in context:
>> http://old.nabble.com/NMS%5CApache.NMS%5Ctags%5C1.2.0-not-working-under-Windows-2000-tp27750135p27750135.html
>> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>>
>>
> 
> 

Jira is not know to me.

 private void StopMonitorThreads()
        {
            lock(monitor)
            {
                if(monitorStarted.CompareAndSet(true, false))
                {
                    AutoResetEvent shutdownEvent = new
AutoResetEvent(false);

                    // Attempt to wait for the Timers to shutdown, but don't
wait
                    // forever, if they don't shutdown after two seconds,
just quit.
                    this.readCheckTimer.Dispose(shutdownEvent);
                    shutdownEvent.WaitOne(TimeSpan.FromMilliseconds(2000));
                    this.writeCheckTimer.Dispose(shutdownEvent);
                    shutdownEvent.WaitOne(TimeSpan.FromMilliseconds(2000));

					this.asyncTasks.Shutdown();
                    this.asyncTasks = null;
                    this.asyncWriteTask = null;
                    this.asyncErrorTask = null;
                }
            }
        }

just add bool true argument to
shutdownEvent.WaitOne(TimeSpan.FromMilliseconds(2000));
like that:

 private void StopMonitorThreads()
        {
            lock(monitor)
            {
                if(monitorStarted.CompareAndSet(true, false))
                {
                    AutoResetEvent shutdownEvent = new
AutoResetEvent(false);

                    // Attempt to wait for the Timers to shutdown, but don't
wait
                    // forever, if they don't shutdown after two seconds,
just quit.
                    this.readCheckTimer.Dispose(shutdownEvent);
                   
shutdownEvent.WaitOne(TimeSpan.FromMilliseconds(2000),true);
                    this.writeCheckTimer.Dispose(shutdownEvent);
                   
shutdownEvent.WaitOne(TimeSpan.FromMilliseconds(2000),true);

					this.asyncTasks.Shutdown();
                    this.asyncTasks = null;
                    this.asyncWriteTask = null;
                    this.asyncErrorTask = null;
                }
            }
        }

and Windows 2000 is back to the business with ActiveMQ under C#.




-- 
View this message in context: http://old.nabble.com/NMS%5CApache.NMS%5Ctags%5C1.2.0-not-working-under-Windows-2000-tp27750135p27755083.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Re: NMS\Apache.NMS\tags\1.2.0 not working under Windows 2000

Posted by Timothy Bish <ta...@gmail.com>.
If you want to come p with a patch and attach it to a Jira issue we can take
a look at it.

On Mon, Mar 1, 2010 at 5:49 PM, Czaban <c...@dgt.com.pl> wrote:

>
> NMS\Apache.NMS\tags\1.2.0 used method form .NET .NET Framework 2.0 service
> pack 2 - windows 2000 can working with .NET .NET Framework 2.0 service pack
> 1 only - work aroIf you want to und seems to be simply - please consider
> this problem.
>
>
> System.MissingMethodException: Method not found: 'Boolean
> System.Threading.WaitHandle.WaitOne(System.TimeSpan)'.
>   at Apache.NMS.ActiveMQ.Transport.InactivityMonitor.StopMonitorThreads()
>   at Apache.NMS.ActiveMQ.Transport.InactivityMonitor.OnException(ITransport
> sender, Exception command)
>   at Apache.NMS.ActiveMQ.Transport.Tcp.TcpTransport.ReadLoop()
>   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
>   at System.Threading.ExecutionContext.Run(ExecutionContext
> executionContext, ContextCallback callback, Object state)
>   at System.Threading.ThreadHelper.ThreadStart()
>
> --
> View this message in context:
> http://old.nabble.com/NMS%5CApache.NMS%5Ctags%5C1.2.0-not-working-under-Windows-2000-tp27750135p27750135.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>
>