示例#1
0
文件: main.go 项目: SiroDiaz/csuf
func recv(mq *sysv_mq.MessageQueue) (offset, size int, err error) {
	data, _, e := mq.ReceiveBytes(1, 0)
	if err != nil {
		err = e
		return
	}
	if len(data) < 16 {
		err = fmt.Errorf("expected offset and size")
		return
	}
	offset = int(binary.BigEndian.Uint64(data[:8]))
	size = int(binary.BigEndian.Uint64(data[8:]))
	return
}
示例#2
0
文件: main.go 项目: SiroDiaz/csuf
func send(mq *sysv_mq.MessageQueue, offset, size int) error {
	var data [16]byte
	binary.BigEndian.PutUint64(data[:], uint64(offset))
	binary.BigEndian.PutUint64(data[8:], uint64(size))
	return mq.SendBytes(data[:], 1, 0)
}