Cross-thread calls to a web service client generate exceptions upon calling dispose()

• We are using .NETMF 4.1
• GHIElectronics.NETMF 4.17
• DPWS_V_4_1_7706_0
• WsHttp configured web services

On cross-thread calls when dispose is called, the following exception is generated:
#### Exception System.InvalidOperationException - CLR_E_INVALID_OPERATION (4) ####
#### Message:
#### System.Threading.Thread::Join [IP: 0000] ####
#### Ws.Services.Transport.HTTP.WsHttpServiceHost::Stop [IP: 001d] ####
#### Dpws.Client.DpwsClient::Dispose [IP: 0007] ####
#### Dpws.Client.DpwsClient::Dispose [IP: 0005] ####
#### WaterProducts.Micro.Net.Site.TemperatureClient::Dispose [IP: 000a] ####
#### WaterProducts.Micro.Net.NetController::LogTemperature [IP: 0068] ####
#### WaterProducts.Micro.Site.NetSiteController::ReadTemperature [IP: 002a] ####

There isn’t enough information to give you any good answer. Is it possible to provide a small test code we can use to see this behavior?