解决部分linux CPU飙升问题

This commit is contained in:
lubeilin
2023-04-24 23:11:10 +08:00
parent 3ddcb629c0
commit 04731f1ce5
2 changed files with 6 additions and 3 deletions
+5
View File
@@ -32,6 +32,7 @@ pub fn default_config(start_args: StartArgs) -> Result<StartConfig, String> {
if token.len() > 64 {
return Err("token不能超过64字符(Token cannot exceed 64 characters)".to_string());
}
println!("token:{:?}",token);
let name = start_args.name.unwrap_or_else(|| {
if let Some(c) = &args_config {
if !c.name.is_empty() {
@@ -46,6 +47,7 @@ pub fn default_config(start_args: StartArgs) -> Result<StartConfig, String> {
} else {
name.to_string()
};
println!("name:{:?}",name);
let device_id = start_args.device_id.unwrap_or_else(|| {
if let Some(c) = &args_config {
if !c.device_id.is_empty() {
@@ -61,6 +63,7 @@ pub fn default_config(start_args: StartArgs) -> Result<StartConfig, String> {
if device_id.is_empty() || device_id.len() > 64 {
return Err("设备id不能为空并且长度不能大于64字符(The device id cannot be empty and the length cannot be greater than 64 characters)".to_string());
}
println!("device_id:{:?}",device_id);
let server = match start_args.server.unwrap_or_else(|| {
if let Some(c) = &args_config {
if !c.server.is_empty() {
@@ -80,6 +83,7 @@ pub fn default_config(start_args: StartArgs) -> Result<StartConfig, String> {
return Err(format!("中继服务器地址错误( Relay server address error) :{:?}", e));
}
};
println!("中继服务器:{:?}",server);
let nat_test_server = start_args.nat_test_server.unwrap_or_else(|| {
if let Some(c) = &args_config {
if !c.nat_test_server.is_empty() {
@@ -92,6 +96,7 @@ pub fn default_config(start_args: StartArgs) -> Result<StartConfig, String> {
if nat_test_server.is_empty() {
return Err("NAT检测服务地址错误(NAT detection service address error)".to_string());
}
println!("NAT探测服务器:{:?}",nat_test_server);
let base_config = StartConfig {
name,
token,
+1 -3
View File
@@ -55,9 +55,7 @@ impl Switch {
punch_handler::start_symmetric(punch, current_device.clone());
punch_handler::start_punch(nat_test.clone(), device_list.clone(), channel.sender()?, current_device.clone());
//tun数据接收处理
for _ in 0..2 {
tun_handler::start(channel.sender()?, tun_reader.clone(), tun_writer.clone(), current_device.clone());
}
tun_handler::start(channel.sender()?, tun_reader.clone(), tun_writer.clone(), current_device.clone());
//外部数据接收处理
let channel_recv_handler = recv_handler::RecvHandler::new(channel.try_clone()?, current_device.clone(), device_list.clone(), register.clone(),
nat_test.clone(), tun_writer.clone(), connect_status.clone(), peer_nat_info_map.clone());