File tree Expand file tree Collapse file tree 3 files changed +12
-14
lines changed Expand file tree Collapse file tree 3 files changed +12
-14
lines changed Original file line number Diff line number Diff line change @@ -32,9 +32,15 @@ fn main() {
32
32
// true
33
33
// });
34
34
35
- let mut broker = Broker :: new ( config) ;
35
+ let _guard = Broker :: new ( config) . start ( ) . unwrap ( ) . drop_guard ( ) ;
36
36
37
- broker. start ( ) . unwrap ( ) ;
37
+ let ( tx, rx) = flume:: bounded :: < ( ) > ( 1 ) ;
38
+ ctrlc:: set_handler ( move || {
39
+ let _ = tx. send ( ( ) ) ;
40
+ } )
41
+ . expect ( "Error setting Ctrl-C handler" ) ;
42
+
43
+ rx. recv ( ) . expect ( "Could not receive Ctrl-C signal" ) ;
38
44
}
39
45
40
46
async fn auth ( _client_id : String , _username : String , _password : String ) -> bool {
Original file line number Diff line number Diff line change @@ -15,7 +15,7 @@ fn main() {
15
15
16
16
dbg ! ( & config) ;
17
17
18
- let mut broker = Broker :: new ( config) ;
18
+ let broker = Broker :: new ( config) ;
19
19
let meters = broker. meters ( ) . unwrap ( ) ;
20
20
21
21
let ( mut link_tx, mut link_rx) = broker. link ( "consumer" ) . unwrap ( ) ;
@@ -59,11 +59,7 @@ fn main() {
59
59
} ) ;
60
60
}
61
61
62
- thread:: spawn ( move || {
63
- if let Err ( e) = broker. start ( ) {
64
- println ! ( "Broker stopped: {e}" ) ;
65
- }
66
- } ) ;
62
+ let _guard = broker. start ( ) . unwrap ( ) . drop_guard ( ) ;
67
63
thread:: sleep ( Duration :: from_secs ( 2 ) ) ;
68
64
69
65
loop {
Original file line number Diff line number Diff line change 1
1
use rumqttd:: { Broker , Config , Notification } ;
2
2
3
- use std:: thread;
4
-
5
3
fn main ( ) {
6
4
let builder = tracing_subscriber:: fmt ( )
7
5
. pretty ( )
@@ -25,11 +23,9 @@ fn main() {
25
23
26
24
dbg ! ( & config) ;
27
25
28
- let mut broker = Broker :: new ( config) ;
26
+ let broker = Broker :: new ( config) ;
29
27
let ( mut link_tx, mut link_rx) = broker. link ( "singlenode" ) . unwrap ( ) ;
30
- thread:: spawn ( move || {
31
- broker. start ( ) . unwrap ( ) ;
32
- } ) ;
28
+ let _guard = broker. start ( ) . unwrap ( ) . drop_guard ( ) ;
33
29
34
30
link_tx. subscribe ( "#" ) . unwrap ( ) ;
35
31
You can’t perform that action at this time.
0 commit comments