mirror of
https://github.com/Bluemangoo/sekai-unpacker.git
synced 2026-09-20 00:06:52 +08:00
client reuse connection
This commit is contained in:
+32
-22
@@ -100,19 +100,24 @@ async fn main() -> anyhow::Result<()> {
|
||||
continue;
|
||||
};
|
||||
if let TunnelEndpoint::Client(client) = endpoint {
|
||||
if cancel_token.is_cancelled() {
|
||||
return;
|
||||
}
|
||||
let permit = semaphore.clone().acquire_owned().await.unwrap();
|
||||
let result = run(client, profile.clone()).await;
|
||||
match result {
|
||||
Ok(true) => {
|
||||
post_task(profile.clone(), permit, cancel_token.clone()).await;
|
||||
loop {
|
||||
if client.get_client().await.is_err() {
|
||||
break;
|
||||
}
|
||||
Err(error) => {
|
||||
error!("{}", error);
|
||||
if cancel_token.is_cancelled() {
|
||||
return;
|
||||
}
|
||||
let permit = semaphore.clone().acquire_owned().await.unwrap();
|
||||
let result = run(client.clone(), profile.clone()).await;
|
||||
match result {
|
||||
Ok(true) => {
|
||||
post_task(profile.clone(), permit, cancel_token.clone()).await;
|
||||
}
|
||||
Err(error) => {
|
||||
error!("{}", error);
|
||||
}
|
||||
_ => {}
|
||||
}
|
||||
_ => {}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -139,19 +144,24 @@ async fn main() -> anyhow::Result<()> {
|
||||
continue;
|
||||
};
|
||||
if let TunnelEndpoint::Client(client) = endpoint {
|
||||
if cancel_token.is_cancelled() {
|
||||
return;
|
||||
}
|
||||
let permit = semaphore.clone().acquire_owned().await.unwrap();
|
||||
let result = run(client, profile.clone()).await;
|
||||
match result {
|
||||
Ok(true) => {
|
||||
post_task(profile.clone(), permit, cancel_token.clone()).await;
|
||||
loop {
|
||||
if client.get_client().await.is_err() {
|
||||
break;
|
||||
}
|
||||
Err(error) => {
|
||||
error!("{}", error);
|
||||
if cancel_token.is_cancelled() {
|
||||
return;
|
||||
}
|
||||
let permit = semaphore.clone().acquire_owned().await.unwrap();
|
||||
let result = run(client.clone(), profile.clone()).await;
|
||||
match result {
|
||||
Ok(true) => {
|
||||
post_task(profile.clone(), permit, cancel_token.clone()).await;
|
||||
}
|
||||
Err(error) => {
|
||||
error!("{}", error);
|
||||
}
|
||||
_ => {}
|
||||
}
|
||||
_ => {}
|
||||
}
|
||||
}
|
||||
sleep(Duration::from_secs(10)).await;
|
||||
|
||||
Reference in New Issue
Block a user