private static extern unsafe int ProcessVmReadV( int pid, Iovec *local_iov, ulong liovcnt, Iovec *remote_iov, ulong riovcnt, ulong flags);
public unsafe long Writev(int fd, Iovec *iov, int iovcnt) { long ret = 0; for (int i = 0; i < iovcnt; i++) { ret += (long)iov[i].Length; } return(ret); }
public unsafe long Writev(int fd, Iovec *iov, int iovcnt) { long ret = 0; for (int i = 0; i < iovcnt; i++) { if (iov[i].Base != IntPtr.Zero) { ret += Write(fd, iov[i].Base, iov[i].Length); } } return(ret); }
public unsafe long Readv(int fd, Iovec *iov, int iovcnt) { long ret = 0; for (int i = 0; i < iovcnt; i++) { var len = Read(fd, iov[i].Base, iov[i].Length); if (len < 0) { return(len); } ret += len; if (len != (long)iov[i].Length) { break; } } return(ret); }
public unsafe long Readv(int fd, Iovec *iov, int iovcnt) { return(0); }