Windows 8.1 hangs randomly

Jul 4, 2014 at 12:41 PM
Edited Jul 4, 2014 at 12:45 PM
We are auto uploading mixed items from about 20 machines. I have one windows 8.1 machine that after a random period of time hangs. It apparently opens the stream, then hangs, as there is a 0 length file left on the server. Over the course of 15 minutes, there is probably 350K data uploaded.

This is compiled using dotnet 2.0, which I don't feel is the issue. This issue happens with the latest code, as well as code from 2012, not sure which version.

This is a partial trace from when this hangs at 150 etc. I really don't know, after the 150 Accepted data connection, whether those Disposing lines are from the following external calls from elsewhere, or what. Pond_2_CalHistory1.png is a zero length file on the server.
220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------
220-You are user number 3 of 50 allowed.
220-Local time is now 16:09. Server port: 21.
220-This is a private system - No anonymous login
Disposing FtpSocketStream...
Disposing FtpClient object...
220-IPv6 connections are also welcome on this server.
220 You will be disconnected after 15 minutes of inactivity.
AUTH TLS
234 AUTH TLS OK.
Time to activate encryption: 0h 0m 0s, Total Seconds: 0.0781928.
USER RockyG@aercon.net
331 User RockyG@aercon.net OK. Password required
PASS <omitted>
230 OK. Current restricted directory is /
PBSZ 0
200 PBSZ=0
PROT P
200 Data protection level set to "private"
Text encoding: System.Text.ASCIIEncoding
PWD
257 "/" is your current location
CWD /
250 OK. Current directory is /
TYPE I
200 TYPE is now 8-bit binary
SIZE Pond_2_CalHistory1.png
213 13818
PASV
227 Entering Passive Mode (162,243,220,235,131,245)
STOR Pond_2_CalHistory1.png
150 Accepted data connection
Disposing FtpClient object...
Disposing FtpClient object...
Disposing FtpSocketStream...
Disposing FtpSocketStream...
Disposing FtpClient object...
I am considering using the BeginOpenWrite asyncronous methods, but I suspect that with all the mutex thread safety that It will end up hanging on that. Thoughts on solutions?