From 379dca552ca91d22ee007b42f93803ad3dc2b274 Mon Sep 17 00:00:00 2001 From: hozan23 Date: Wed, 20 Mar 2024 15:20:21 +0100 Subject: core: add the option to create a new task group without providing an executor & remove GlobalExecutor type --- p2p/src/discovery/lookup.rs | 8 ++++++-- p2p/src/discovery/mod.rs | 5 ++--- p2p/src/discovery/refresh.rs | 7 +++---- 3 files changed, 11 insertions(+), 9 deletions(-) (limited to 'p2p/src/discovery') diff --git a/p2p/src/discovery/lookup.rs b/p2p/src/discovery/lookup.rs index 1d73306..c81fbc6 100644 --- a/p2p/src/discovery/lookup.rs +++ b/p2p/src/discovery/lookup.rs @@ -5,7 +5,11 @@ use log::{error, trace}; use rand::{rngs::OsRng, seq::SliceRandom, RngCore}; use smol::lock::{Mutex, RwLock}; -use karyon_core::{async_util::timeout, crypto::KeyPair, util::decode, GlobalExecutor}; +use karyon_core::{ + async_util::{timeout, Executor}, + crypto::KeyPair, + util::decode, +}; use karyon_net::{Conn, Endpoint}; @@ -60,7 +64,7 @@ impl LookupService { table: Arc>, config: Arc, monitor: Arc, - ex: GlobalExecutor, + ex: Executor<'static>, ) -> Self { let inbound_slots = Arc::new(ConnectionSlots::new(config.lookup_inbound_slots)); let outbound_slots = Arc::new(ConnectionSlots::new(config.lookup_outbound_slots)); diff --git a/p2p/src/discovery/mod.rs b/p2p/src/discovery/mod.rs index 040a415..4b54233 100644 --- a/p2p/src/discovery/mod.rs +++ b/p2p/src/discovery/mod.rs @@ -8,9 +8,8 @@ use rand::{rngs::OsRng, seq::SliceRandom}; use smol::lock::Mutex; use karyon_core::{ - async_util::{Backoff, TaskGroup, TaskResult}, + async_util::{Backoff, Executor, TaskGroup, TaskResult}, crypto::KeyPair, - GlobalExecutor, }; use karyon_net::{Conn, Endpoint}; @@ -72,7 +71,7 @@ impl Discovery { conn_queue: Arc, config: Arc, monitor: Arc, - ex: GlobalExecutor, + ex: Executor<'static>, ) -> ArcDiscovery { let inbound_slots = Arc::new(ConnectionSlots::new(config.inbound_slots)); let outbound_slots = Arc::new(ConnectionSlots::new(config.outbound_slots)); diff --git a/p2p/src/discovery/refresh.rs b/p2p/src/discovery/refresh.rs index bfcab56..e56f0eb 100644 --- a/p2p/src/discovery/refresh.rs +++ b/p2p/src/discovery/refresh.rs @@ -10,9 +10,8 @@ use smol::{ }; use karyon_core::{ - async_util::{timeout, Backoff, TaskGroup, TaskResult}, + async_util::{timeout, Backoff, Executor, TaskGroup, TaskResult}, util::{decode, encode}, - GlobalExecutor, }; use karyon_net::{udp, Connection, Endpoint, NetError}; @@ -46,7 +45,7 @@ pub struct RefreshService { task_group: TaskGroup<'static>, /// A global executor - executor: GlobalExecutor, + executor: Executor<'static>, /// Holds the configuration for the P2P network. config: Arc, @@ -61,7 +60,7 @@ impl RefreshService { config: Arc, table: Arc>, monitor: Arc, - executor: GlobalExecutor, + executor: Executor<'static>, ) -> Self { let listen_endpoint = config .listen_endpoint -- cgit v1.2.3