Skip to content

Latest commit

 

History

18 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

msg

PkgGoDev Build Status Go Report Card LICENSE

Package msg provides a way to use System V message queues.

Get started

Install

go get github.com/hslam/msg

Import

import "github.com/hslam/msg"

Usage

Example

msgsnd

package main

import (
	"github.com/hslam/ftok"
	"github.com/hslam/msg"
	"time"
)

func main() {
	key, err := ftok.Ftok("/tmp", 0x22)
	if err != nil {
		panic(err)
	}
	msgid, err := msg.Get(key, msg.IPC_CREAT|0600)
	if err != nil {
		panic(err)
	}
	defer msg.Remove(msgid)
	err = msg.Send(msgid, 1, []byte("Hello World"), 0600)
	if err != nil {
		panic(err)
	}
	time.Sleep(time.Second * 10)
}

msgrcv

package main

import (
	"fmt"
	"github.com/hslam/ftok"
	"github.com/hslam/msg"
)

func main() {
	key, err := ftok.Ftok("/tmp", 0x22)
	if err != nil {
		panic(err)
	}
	msgid, err := msg.Get(key, 0600)
	if err != nil {
		panic(err)
	}
	text, err := msg.Receive(msgid, 1, 0600)
	if err != nil {
		panic(err)
	}
	fmt.Println(string(text))
}

Output

Hello World

License

This package is licensed under a MIT license (Copyright (c) 2020 Meng Huang)

Author

msg was written by Meng Huang.

About

Package msg provides a way to use System V message queues.

Topics

Resources

Stars

7 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages