protected RawWrite ( byte buffer, int offset, int count ) : int | ||
buffer | byte | |
offset | int | |
count | int | |
Результат | int |
protected override int RawWrite(byte[] buffer, int offset, int count)
{
try
{
if (isAsync)
{
if (currentTask != null)
currentTask.Wait();
currentTask = new Task(() =>
{
int rv = socket.Send(buffer, offset, count, SocketFlags.None);
eof = rv == 0;
});
currentTask.Start();
return count;
}
else
{
int rv = socket.Send(buffer, offset, count, SocketFlags.None);
eof = rv == 0;
return rv;
}
}
catch (System.Exception e)
{
PhpException.Throw(PhpError.Warning, ErrResources.stream_socket_error, e.Message);
return 0;
}
}