|
@@ -19,6 +19,7 @@ type HeartBeatInfo struct {
|
|
|
|
|
|
var lastTime time.Time
|
|
var lastTime time.Time
|
|
var mutex sync.Mutex
|
|
var mutex sync.Mutex
|
|
|
|
+var sub *goroslib.Subscriber
|
|
|
|
|
|
func main() {
|
|
func main() {
|
|
lastTime = time.Now()
|
|
lastTime = time.Now()
|
|
@@ -37,7 +38,7 @@ func main() {
|
|
Name: "dpi_with_heartbeatInfo",
|
|
Name: "dpi_with_heartbeatInfo",
|
|
MasterAddress: "127.0.0.1:11311",
|
|
MasterAddress: "127.0.0.1:11311",
|
|
})
|
|
})
|
|
- _, err = goroslib.NewSubscriber(goroslib.SubscriberConf{
|
|
|
|
|
|
+ sub, err = goroslib.NewSubscriber(goroslib.SubscriberConf{
|
|
Node: rosNode,
|
|
Node: rosNode,
|
|
Topic: "/heartbeat_info",
|
|
Topic: "/heartbeat_info",
|
|
Callback: func(data *HeartBeatInfo) {
|
|
Callback: func(data *HeartBeatInfo) {
|
|
@@ -59,7 +60,9 @@ func main() {
|
|
fmt.Println("执行停止命令报错,执行结果为:", s, ",错误信息为:", err)
|
|
fmt.Println("执行停止命令报错,执行结果为:", s, ",错误信息为:", err)
|
|
continue
|
|
continue
|
|
}
|
|
}
|
|
- fmt.Println("执行启动命令 sh dpi_stop.sh 成功,执行结果为:", s)
|
|
|
|
|
|
+ fmt.Println("执行停止命令 sh dpi_stop.sh 成功,执行结果为:", s)
|
|
|
|
+ sub.Close()
|
|
|
|
+
|
|
_, s, err = util.ExecuteWithDirSync("/data", "sh", "dpi_start.sh")
|
|
_, s, err = util.ExecuteWithDirSync("/data", "sh", "dpi_start.sh")
|
|
if err != nil {
|
|
if err != nil {
|
|
fmt.Println("执行启动命令报错,执行结果为:", s, ",错误信息为:", err)
|
|
fmt.Println("执行启动命令报错,执行结果为:", s, ",错误信息为:", err)
|
|
@@ -67,6 +70,17 @@ func main() {
|
|
}
|
|
}
|
|
fmt.Println("执行启动命令 sh dpi_start.sh 成功,执行结果为:", s)
|
|
fmt.Println("执行启动命令 sh dpi_start.sh 成功,执行结果为:", s)
|
|
time.Sleep(5 * time.Second)
|
|
time.Sleep(5 * time.Second)
|
|
|
|
+ sub, err = goroslib.NewSubscriber(goroslib.SubscriberConf{
|
|
|
|
+ Node: rosNode,
|
|
|
|
+ Topic: "/heartbeat_info",
|
|
|
|
+ Callback: func(data *HeartBeatInfo) {
|
|
|
|
+ fmt.Println("监听到数据:", data)
|
|
|
|
+ lastTime = time.Now()
|
|
|
|
+ }})
|
|
|
|
+ if err != nil {
|
|
|
|
+ fmt.Println("监听话题/heartbeat_info报错", err)
|
|
|
|
+ os.Exit(1)
|
|
|
|
+ }
|
|
lastTime = time.Now()
|
|
lastTime = time.Now()
|
|
}
|
|
}
|
|
}
|
|
}
|