From 03c013cc3cec81dd0379f0a1ab271127fb9140df Mon Sep 17 00:00:00 2001 From: Filip Tibell Date: Mon, 28 Apr 2025 11:35:53 +0200 Subject: [PATCH] Rc and cell instead of arc atomic --- crates/lune-std-net/src/server/mod.rs | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/crates/lune-std-net/src/server/mod.rs b/crates/lune-std-net/src/server/mod.rs index 57ee2b6..7ac3b24 100644 --- a/crates/lune-std-net/src/server/mod.rs +++ b/crates/lune-std-net/src/server/mod.rs @@ -1,10 +1,4 @@ -use std::{ - net::SocketAddr, - sync::{ - atomic::{AtomicBool, Ordering}, - Arc, - }, -}; +use std::{cell::Cell, net::SocketAddr, rc::Rc}; use async_net::TcpListener; use futures_lite::pin; @@ -45,10 +39,10 @@ pub async fn serve(lua: Lua, port: u16, config: ServeConfig) -> LuaResult acc, @@ -65,7 +59,7 @@ pub async fn serve(lua: Lua, port: u16, config: ServeConfig) -> LuaResult acc, @@ -84,14 +78,14 @@ pub async fn serve(lua: Lua, port: u16, config: ServeConfig) -> LuaResult LuaResult conn.as_mut().graceful_shutdown(), Either::Left(Err(_)) => { // Same as note #1 - handle_dropped.store(true, Ordering::SeqCst); + handle_dropped.set(true); if let Err(_err) = conn.await { // TODO: Propagate error somehow }