zhangmeng
2019-08-26 20a4c4bfb5b9ea427f9117408ff0e4513ebef9eb
shm.go
@@ -13,8 +13,6 @@
type SHM struct {
   rw  *shm.ReadWriteCloser
   typ td
   recvData []byte
}
// Send impl interface Diliver
@@ -38,16 +36,18 @@
      return nil, errors.New("please open shm consumer first")
   }
   if s.recvData == nil {
      s.recvData = make([]byte, maxRecvSize)
   }
   n, err := s.rw.Read(s.recvData)
   // data := make([]byte, maxRecvSize)
   // n, err := s.rw.Read(data)
   // if err == nil || err == io.EOF {
   //    data := make([]byte, maxRecvSize)
   //    copy(data, s.recvData)
   //    return data, nil
   // }
   data, err := s.rw.DirectRead()
   if err == nil || err == io.EOF {
      data := make([]byte, n)
      copy(data, s.recvData)
      return data, nil
   }
   return nil, err
}
@@ -95,7 +95,6 @@
      return &SHM{
         rw:       rw,
         typ:      agent,
         recvData: nil,
      }, nil
   }
@@ -112,7 +111,6 @@
      return &SHM{
         rw:       rw,
         typ:      coactee,
         recvData: nil,
      }, nil
   }
   return nil, err