zhangmeng
2019-08-26 a0123f163eddcea3e6b9f9d36f1f3fb3aa2c835a
create.go
@@ -6,13 +6,11 @@
package shm
import (
   "golang.org/x/sys/unix"
   "os"
   "sync/atomic"
   "unsafe"
   "github.com/tmthrgd/go-sem"
   "github.com/tmthrgd/go-shm"
   "golang.org/x/sys/unix"
)
func CreateSimplex(name string, perm os.FileMode, blockCount, blockSize int) (*ReadWriteCloser, error) {
@@ -20,7 +18,7 @@
      return nil, ErrNotMultipleOf64
   }
   file, err := shm.Open(name, unix.O_CREAT|unix.O_EXCL|unix.O_TRUNC|unix.O_RDWR, perm)
   file, err := Open(name, unix.O_CREAT|unix.O_EXCL|unix.O_TRUNC|unix.O_RDWR, perm)
   if err != nil {
      return nil, err
   }
@@ -50,11 +48,11 @@
    */
   *(*uint32)(&shared.BlockCount), *(*uint64)(&shared.BlockSize) = uint32(blockCount), uint64(blockSize)
   if err = ((*sem.Semaphore)(&shared.SemSignal)).Init(0); err != nil {
   if err = ((*Semaphore)(&shared.SemSignal)).Init(0); err != nil {
      return nil, err
   }
   if err = ((*sem.Semaphore)(&shared.SemAvail)).Init(0); err != nil {
   if err = ((*Semaphore)(&shared.SemAvail)).Init(0); err != nil {
      return nil, err
   }
@@ -91,7 +89,7 @@
      return nil, ErrNotMultipleOf64
   }
   file, err := shm.Open(name, unix.O_CREAT|unix.O_EXCL|unix.O_TRUNC|unix.O_RDWR, perm)
   file, err := Open(name, unix.O_CREAT|unix.O_EXCL|unix.O_TRUNC|unix.O_RDWR, perm)
   if err != nil {
      return nil, err
   }
@@ -123,11 +121,11 @@
       */
      *(*uint32)(&shared.BlockCount), *(*uint64)(&shared.BlockSize) = uint32(blockCount), uint64(blockSize)
      if err = ((*sem.Semaphore)(&shared.SemSignal)).Init(0); err != nil {
      if err = ((*Semaphore)(&shared.SemSignal)).Init(0); err != nil {
         return nil, err
      }
      if err = ((*sem.Semaphore)(&shared.SemAvail)).Init(0); err != nil {
      if err = ((*Semaphore)(&shared.SemAvail)).Init(0); err != nil {
         return nil, err
      }