SoapHttpClientProtocol.Invoke hangs when calling web service from worker thread -- only in debugger!

  • Thread starter Thread starter Gregory Hassett
  • Start date Start date
G

Gregory Hassett

Hi, I have a web service called GetComputerNameAndDescription which I can
call from the main thread of my app. If I call it from a separate thread,
however, it hangs on the call to Invoke() -- but only if I'm in the
debugger. Here's a stack trace with non-user code shown -- the call to
RegisterNotifySource, at the top of the stack, never returns -- I have to do
a "break all" inside the debugger, then find this thread and examine its
call stack in order to get this output.

Anyone have any ideas what's going on here?

Thanks

Greg Hassett

00000000()

system.web.services.dll!System.Web.Services.UnsafeNativeMethods.RegisterNoti
fySource(System.Web.Services.Interop.INotifyConnection2 connection =
{System.__ComObject}, System.Web.Services.Interop.INotifySource2 source =
{System.Web.Services.Protocols.RemoteDebugger}) + 0x1e bytes

system.web.services.dll!System.Web.Services.Protocols.RemoteDebugger.get_Not
ifySink() + 0x2d bytes

system.web.services.dll!System.Web.Services.Protocols.RemoteDebugger.NotifyC
lientCallOut(System.Net.WebRequest request = {System.Net.HttpWebRequest}) +
0x3d bytes

system.web.services.dll!System.Web.Services.Protocols.WebClientProtocol.GetW
ebRequest(System.Uri uri = {System.Uri}) + 0xdd bytes

system.web.services.dll!System.Web.Services.Protocols.HttpWebClientProtocol.
GetWebRequest(System.Uri uri = {System.Uri}) + 0x22 bytes

system.web.services.dll!System.Web.Services.Protocols.SoapHttpClientProtocol
..GetWebRequest(System.Uri uri = {System.Uri}) + 0x1e bytes

system.web.services.dll!System.Web.Services.Protocols.SoapHttpClientProtocol
..Invoke(string methodName = "GetComputerNameAndDescription", System.Object[]
parameters = {Length=2}) + 0x75 bytescheebyservice.dll!CheebyService.AdelaP2PWebServices.AccountManager.AccountMa
nager.GetComputerNameAndDescription(string encryptionId =
"998eea01c0ad4f019ecaec74785053c3", string encryptedMacAddress =
"ZOG2U5DFoV39V+6VEcJCIoE0WD5Ej65qM5e+M8+XY0Jx0d3e21x4UpeoEIDYkODFY8wXRAayul9
KOZyqS3JsxSQa8JyWD5ddtEUd2XuHNh72XFDd/3tw9SYVitPCSic10w7ywX1J60xPfo8OxV/KAUl
N61XYvmIbHgobOIQsnjY=", string name = null, string description = null) Line
459 + 0x3c bytes C#

cheebyservice.dll!CheebyService.ConnectionService.GetComputerNameAndDescript
ion(string name = null, string description = null) Line 906 + 0x2b bytes C#

cheebyservice.dll!CheebyService.CommandProcessors.ConnectionServiceManager.e
xecuteCommand(CheebyService.Service cs = {CheebyService.SvcLocal},
System.Xml.XmlNode node = {System.Xml.XmlElement}) Line 75 + 0x26 bytes C#
cheebyservice.dll!CheebyService.SvcLocal.executeCommand(System.Xml.XmlNode
commandNode = {System.Xml.XmlElement}) Line 95 + 0x16 bytes C#

cheebyservice.dll!CheebyService.SvcLocal.Handler(System.Net.Sockets.TcpClien
t tcpClient = {System.Net.Sockets.TcpClient}, string xmlParams) Line 55 +
0xc bytes C#
cheebyservice.dll!CheebyService.Service.HandlerMethod() Line 243 C#
 
however, it hangs on the call to Invoke() -- but only if I'm in the
debugger. Here's a stack trace with non-user code shown -- the call to

From the look of your stack trace, it might be that the debugger is trying
to debug the server?

Here's a useful article about troubleshooting remote debugging:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dv_vstechart/html/vsdebug.asp

However, in case of debugging trouble I expect the thread to shut down
with an exception after a minute at most.

Greetings,
Wessel
 

Ask a Question

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

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Back
Top