Only several of them are executing but blocked. By looking into the Visual Studio's Tasks window, it is quite obvious that there are around 300 tasks in front of it. OrderBy(x => x, new PreferredAddressFamil圜omparer(preferred)) Select(x => new IPEndPoint(x, dnsInitial.Port)) If you slightly modify the code and turn that into: var task = Dns.GetHostAddressesAsync(dnsInitial.Host).ConfigureAwait(false) The bad thing happens here: Dns.GetHostAddressesAsync. It turned out that, in the timer version, the MontiorServerAsync was executed but after it comes all the way through ServerMonitor.HeartbeatAsync, Binar圜onnection.OpenAsync, Binar圜onnection.OpenHelperAsync and TcpStreamFactory.CreateStreamAsync, it finally reached TcpStreamFactory.ResolveEndPointsAsync. And the second one comes from the "MonitorServerAsync" in ServerMonitor.cs. Helper.HandleCompletedTask(helper.Tasks) īy adding these lines, you will also find out that the non-timer version will update twice but the timer version will only update once. > server using CompositeServerSelector") This applications had been running for more than 1 year perfectly but since 24/June/2016 application A (WCF) began a strange behavior when opening a new connection to Mongo Server: > System.TimeoutException: A timeout occured after 30000ms selecting a net 3.5īoth services are similar, service B is maintained for legacy systems and service A is under evolution.īoth applications are hosted in same servers. net 4.5ī - Application B is a windows service application using mongodriver 1.11 compiled in. net wcf service hosted in IIS 7.5 using c# mongodriver 2.2.4 compiled in.
0 Comments
Leave a Reply. |