diff --git a/README.md b/README.md index 42eea1a..e4de39c 100644 --- a/README.md +++ b/README.md @@ -26,37 +26,24 @@ Sending: ) func main() { - var pub ecal.PublisherIf - var pubChannel chan<- ecal.Message - var err error - pub, pubChannel, err = ecal.PublisherCreate("Hello", "base:std::string", "", true) - if err != nil { - log.Fatal(err) - } - defer pub.Destroy() - - go func() { - count := 1 - for ecal.Ok() { - message := ecal.Message{Content: []byte(fmt.Sprintf("Hello World from Go (%d)", count)), - Timestamp: -1} - count += 1 - select { - case pubChannel <- message: - log.Printf("Sent \"%s\"\n", message.Content) - case <-time.After(time.Second): - } - <-time.After(250 * time.Millisecond) - } - - pub.Stop() - }() - - for !pub.IsStopped() { - <-time.After(time.Second) - } - - <-time.After(time.Second) + pub, pubChannel, err := ecal.PublisherCreate("Hello", "base:std::string", "", true) + if err != nil { + log.Fatal(err) + } + defer pub.Destroy() + + count := 0 + for ecal.Ok() { + message := ecal.Message{Content: []byte(fmt.Sprintf("Hello World from Go (%d)", count)), + Timestamp: -1} + count += 1 + select { + case pubChannel <- message: + log.Printf("Sent \"%s\"\n", message.Content) + case <-time.After(time.Second): + } + <-time.After(250 * time.Millisecond) + } } Receiving: @@ -71,29 +58,17 @@ Receiving: ) func main() { - var sub ecal.SubscriberIf - var subChannel <-chan ecal.Message - var err error - sub, subChannel, err = ecal.SubscriberCreate("Hello", "base:std::string", "", true, 1024) - if err != nil { - log.Fatal(err) - } - defer sub.Destroy() - - go func() { - for ecal.Ok() { - select { - case message := <-subChannel: - log.Printf("Received \"%s\"\n", message.Content) - case <-time.After(time.Second): - } - } - - sub.Stop() - }() - - for !sub.IsStopped() { - <-time.After(time.Second) - } - + sub, subChannel, err := ecal.SubscriberCreate("Hello", "base:std::string", "", true, 1024) + if err != nil { + log.Fatal(err) + } + defer sub.Destroy() + + for ecal.Ok() { + select { + case message := <-subChannel: + log.Printf("Received \"%s\"\n", message.Content) + case <-time.After(time.Second): + } + } } diff --git a/ecal/README.md b/ecal/README.md index a9a8a03..e4de39c 100644 --- a/ecal/README.md +++ b/ecal/README.md @@ -20,44 +20,30 @@ Sending: import ( "log" - "os" "time" "github.com/Blutkoete/golang-ecal/ecal" ) func main() { - var pub ecal.PublisherIf - var pubChannel chan<- ecal.Message - var err error - pub, pubChannel, err = ecal.PublisherCreate("Hello", "base:std::string", "", true) - if err != nil { - log.Fatal(err) - } - defer pub.Destroy() - - go func() { - count := 1 - for ecal.Ok() { - message := ecal.Message{Content: []byte(fmt.Sprintf("Hello World from Go (%d)", count)), - Timestamp: -1} - count += 1 - select { - case pubChannel <- message: - log.Printf("Sent \"%s\"\n", message.Content) - case <-time.After(time.Second): - } - <-time.After(250 * time.Millisecond) - } - - pub.Stop() - }() - - for !pub.IsStopped() { - <-time.After(time.Second) - } - - <-time.After(time.Second) + pub, pubChannel, err := ecal.PublisherCreate("Hello", "base:std::string", "", true) + if err != nil { + log.Fatal(err) + } + defer pub.Destroy() + + count := 0 + for ecal.Ok() { + message := ecal.Message{Content: []byte(fmt.Sprintf("Hello World from Go (%d)", count)), + Timestamp: -1} + count += 1 + select { + case pubChannel <- message: + log.Printf("Sent \"%s\"\n", message.Content) + case <-time.After(time.Second): + } + <-time.After(250 * time.Millisecond) + } } Receiving: @@ -66,36 +52,23 @@ Receiving: import ( "log" - "os" "time" "github.com/Blutkoete/golang-ecal/ecal" ) func main() { - var sub ecal.SubscriberIf - var subChannel <-chan ecal.Message - var err error - sub, subChannel, err = ecal.SubscriberCreate("Hello", "base:std::string", "", true, 1024) - if err != nil { - log.Fatal(err) - } - defer sub.Destroy() - - go func() { - for ecal.Ok() { - select { - case message := <-subChannel: - log.Printf("Received \"%s\"\n", message.Content) - case <-time.After(time.Second): - } - } - - sub.Stop() - }() - - for !sub.IsStopped() { - <-time.After(time.Second) - } - + sub, subChannel, err := ecal.SubscriberCreate("Hello", "base:std::string", "", true, 1024) + if err != nil { + log.Fatal(err) + } + defer sub.Destroy() + + for ecal.Ok() { + select { + case message := <-subChannel: + log.Printf("Received \"%s\"\n", message.Content) + case <-time.After(time.Second): + } + } } diff --git a/ecal/init.go b/ecal/init.go index 456cc7d..1c13322 100644 --- a/ecal/init.go +++ b/ecal/init.go @@ -5,7 +5,7 @@ import ( "errors" "unsafe" - "golang-ecal/ecalc" + "github.com/Blutkoete/golang-ecal/ecalc" ) const InitPublisher uint = uint(ecalc.ECAL_Init_Publisher) diff --git a/ecal/process.go b/ecal/process.go index 08dce24..2899c66 100644 --- a/ecal/process.go +++ b/ecal/process.go @@ -1,7 +1,7 @@ package ecal import ( - "golang-ecal/ecalc" + "github.com/Blutkoete/golang-ecal/ecalc" ) func ProcessSleepMS(sleepTimeMs int64) { diff --git a/ecal/publisher.go b/ecal/publisher.go index e9bc930..4e3b7d4 100644 --- a/ecal/publisher.go +++ b/ecal/publisher.go @@ -11,7 +11,7 @@ import ( "sync" "unsafe" - "golang-ecal/ecalc" + "github.com/Blutkoete/golang-ecal/ecalc" ) type PublisherIf interface { diff --git a/ecal/subscriber.go b/ecal/subscriber.go index f23582f..7fd8ecf 100644 --- a/ecal/subscriber.go +++ b/ecal/subscriber.go @@ -11,7 +11,7 @@ import ( "sync" "unsafe" - "golang-ecal/ecalc" + "github.com/Blutkoete/golang-ecal/ecalc" ) type SubscriberIf interface { diff --git a/golang-ecal_sample.go b/golang-ecal_sample.go index 5e8b1e6..c991686 100644 --- a/golang-ecal_sample.go +++ b/golang-ecal_sample.go @@ -6,67 +6,43 @@ import ( "os" "time" - "golang-ecal/ecal" + "github.com/Blutkoete/golang-ecal/ecal" ) func minimalSnd() { - var pub ecal.PublisherIf - var pubChannel chan<- ecal.Message - var err error - pub, pubChannel, err = ecal.PublisherCreate("Hello", "base:std::string", "", true) + pub, pubChannel, err := ecal.PublisherCreate("Hello", "base:std::string", "", true) if err != nil { log.Fatal(err) } defer pub.Destroy() - go func() { - count := 1 - for ecal.Ok() { - message := ecal.Message{Content: []byte(fmt.Sprintf("Hello World from Go (%d)", count)), + count := 0 + for ecal.Ok() { + message := ecal.Message{Content: []byte(fmt.Sprintf("Hello World from Go (%d)", count)), Timestamp: -1} - count += 1 - select { - case pubChannel <- message: - log.Printf("Sent \"%s\"\n", message.Content) - case <-time.After(time.Second): - } - <-time.After(250 * time.Millisecond) + count += 1 + select { + case pubChannel <- message: + log.Printf("Sent \"%s\"\n", message.Content) + case <-time.After(time.Second): } - - pub.Stop() - }() - - for !pub.IsStopped() { - <-time.After(time.Second) + <-time.After(250 * time.Millisecond) } - - <-time.After(time.Second) } func minimalRec() { - var sub ecal.SubscriberIf - var subChannel <-chan ecal.Message - var err error - sub, subChannel, err = ecal.SubscriberCreate("Hello", "base:std::string", "", true, 1024) + sub, subChannel, err := ecal.SubscriberCreate("Hello", "base:std::string", "", true, 1024) if err != nil { log.Fatal(err) } defer sub.Destroy() - go func() { - for ecal.Ok() { - select { - case message := <-subChannel: - log.Printf("Received \"%s\"\n", message.Content) - case <-time.After(time.Second): - } + for ecal.Ok() { + select { + case message := <-subChannel: + log.Printf("Received \"%s\"\n", message.Content) + case <-time.After(time.Second): } - - sub.Stop() - }() - - for !sub.IsStopped() { - <-time.After(time.Second) } }