zhangmeng
2019-05-22 a8b90cfcf722f4b1c4aac9f318e35824f02b8787
shm.go
@@ -10,9 +10,8 @@
// SHM share memory
type SHM struct {
   rw   *shm.ReadWriteCloser
   typ  td
   data []byte
   rw  *shm.ReadWriteCloser
   typ td
}
// Send impl interface Diliver
@@ -36,10 +35,11 @@
      return nil, errors.New("please open shm consumer first")
   }
   n, err := s.rw.Read(s.data)
   data := make([]byte, maxRecvSize)
   n, err := s.rw.Read(data)
   if err == nil || err == io.EOF {
      s.data = s.data[:n:n]
      return s.data, nil
      data = data[:n:n]
      return data, nil
   }
   return nil, err
@@ -77,13 +77,11 @@
      fmt.Println("shmProducer recv too much parameter: ", len(param))
      return nil
   }
   shm.Unlink(url)
   if rw, err := shm.CreateSimplex(url, 0644, param[0], param[1]); err == nil {
      fmt.Println(rw.Name())
      return &SHM{
         rw,
         agent,
         nil,
      }
   }
@@ -102,7 +100,6 @@
      return &SHM{
         rw,
         coactee,
         make([]byte, maxRecvSize),
      }
   }
   fmt.Println("shmConsumer open error")