use dlopen2::wrapper::WrapperApi;
hotload::gen_rust_no_mangle!((API, "./dll_lib/src/lib.rs", true));
fn main() {
let dll: hotload::types::Hotload<API> = hotload::types::Hotload::new("./dll_lib/target/debug/dll_lib.dll");
dll.init_load(|new_dll, old_dll| {
println!("动态库加载完成");
if let Some(_old) = old_dll {
println!("检测到动态库更新,已替换为新版本");
_old.unload();
new_dll.action_main();
}
}).unwrap();
dll.action_main();
loop {
std::thread::sleep(std::time::Duration::from_secs(1));
}
}