You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
48 lines
1.1 KiB
48 lines
1.1 KiB
#[cfg(feature = "std")] |
|
use ironforce::interface::Interface; |
|
#[cfg(feature = "std")] |
|
use ironforce::interfaces::ip::IPInterface; |
|
#[cfg(feature = "std")] |
|
use std::net; |
|
use std::thread; |
|
use std::time::Duration; |
|
#[cfg(feature = "std")] |
|
use ironforce::res::IFResult; |
|
|
|
#[cfg(feature = "std")] |
|
fn main() { |
|
println!("hello"); |
|
test(); |
|
} |
|
|
|
fn test() -> IFResult<()> { |
|
let message = *b"Hello world from iron forest"; |
|
|
|
let mut interface1 = IPInterface::new()?; |
|
let mut interface2 = IPInterface::new()?; |
|
|
|
let t1 = std::thread::spawn(move || { |
|
interface1.send(&message, Some(String::from("127.0.0.1:50001"))).unwrap(); |
|
interface1 |
|
}); |
|
thread::sleep(Duration::from_millis(10)); |
|
let t2 = std::thread::spawn(move || { |
|
|
|
interface2.main_loop_iteration().unwrap(); |
|
interface2 |
|
}); |
|
let res1 = t1.join(); |
|
match res1 { |
|
Ok(_) => println!("Ok"), |
|
Err(e) => println!("{:?}", e) |
|
} |
|
let res2 = t2.join(); |
|
match res2 { |
|
Ok(_) => println!("Ok"), |
|
Err(e) => println!("{:?}", e) |
|
} |
|
Ok(()) |
|
} |
|
|
|
#[cfg(not(feature = "std"))] |
|
fn main() {}
|
|
|