@@ -9,8 +9,8 @@ use super::utils::Backoff;
99use super :: waker:: Waker ;
1010use crate :: cell:: UnsafeCell ;
1111use crate :: marker:: PhantomData ;
12- use crate :: sync:: Mutex ;
1312use crate :: sync:: atomic:: { Atomic , AtomicBool , Ordering } ;
13+ use crate :: sync:: nonpoison:: Mutex ;
1414use crate :: time:: Instant ;
1515use crate :: { fmt, ptr} ;
1616
@@ -141,7 +141,7 @@ impl<T> Channel<T> {
141141 /// Attempts to send a message into the channel.
142142 pub ( crate ) fn try_send ( & self , msg : T ) -> Result < ( ) , TrySendError < T > > {
143143 let token = & mut Token :: default ( ) ;
144- let mut inner = self . inner . lock ( ) . unwrap ( ) ;
144+ let mut inner = self . inner . lock ( ) ;
145145
146146 // If there's a waiting receiver, pair up with it.
147147 if let Some ( operation) = inner. receivers . try_select ( ) {
@@ -165,7 +165,7 @@ impl<T> Channel<T> {
165165 deadline : Option < Instant > ,
166166 ) -> Result < ( ) , SendTimeoutError < T > > {
167167 let token = & mut Token :: default ( ) ;
168- let mut inner = self . inner . lock ( ) . unwrap ( ) ;
168+ let mut inner = self . inner . lock ( ) ;
169169
170170 // If there's a waiting receiver, pair up with it.
171171 if let Some ( operation) = inner. receivers . try_select ( ) {
@@ -196,12 +196,12 @@ impl<T> Channel<T> {
196196 match sel {
197197 Selected :: Waiting => unreachable ! ( ) ,
198198 Selected :: Aborted => {
199- self . inner . lock ( ) . unwrap ( ) . senders . unregister ( oper) . unwrap ( ) ;
199+ self . inner . lock ( ) . senders . unregister ( oper) . unwrap ( ) ;
200200 let msg = unsafe { packet. msg . get ( ) . replace ( None ) . unwrap ( ) } ;
201201 Err ( SendTimeoutError :: Timeout ( msg) )
202202 }
203203 Selected :: Disconnected => {
204- self . inner . lock ( ) . unwrap ( ) . senders . unregister ( oper) . unwrap ( ) ;
204+ self . inner . lock ( ) . senders . unregister ( oper) . unwrap ( ) ;
205205 let msg = unsafe { packet. msg . get ( ) . replace ( None ) . unwrap ( ) } ;
206206 Err ( SendTimeoutError :: Disconnected ( msg) )
207207 }
@@ -217,7 +217,7 @@ impl<T> Channel<T> {
217217 /// Attempts to receive a message without blocking.
218218 pub ( crate ) fn try_recv ( & self ) -> Result < T , TryRecvError > {
219219 let token = & mut Token :: default ( ) ;
220- let mut inner = self . inner . lock ( ) . unwrap ( ) ;
220+ let mut inner = self . inner . lock ( ) ;
221221
222222 // If there's a waiting sender, pair up with it.
223223 if let Some ( operation) = inner. senders . try_select ( ) {
@@ -234,7 +234,7 @@ impl<T> Channel<T> {
234234 /// Receives a message from the channel.
235235 pub ( crate ) fn recv ( & self , deadline : Option < Instant > ) -> Result < T , RecvTimeoutError > {
236236 let token = & mut Token :: default ( ) ;
237- let mut inner = self . inner . lock ( ) . unwrap ( ) ;
237+ let mut inner = self . inner . lock ( ) ;
238238
239239 // If there's a waiting sender, pair up with it.
240240 if let Some ( operation) = inner. senders . try_select ( ) {
@@ -264,11 +264,11 @@ impl<T> Channel<T> {
264264 match sel {
265265 Selected :: Waiting => unreachable ! ( ) ,
266266 Selected :: Aborted => {
267- self . inner . lock ( ) . unwrap ( ) . receivers . unregister ( oper) . unwrap ( ) ;
267+ self . inner . lock ( ) . receivers . unregister ( oper) . unwrap ( ) ;
268268 Err ( RecvTimeoutError :: Timeout )
269269 }
270270 Selected :: Disconnected => {
271- self . inner . lock ( ) . unwrap ( ) . receivers . unregister ( oper) . unwrap ( ) ;
271+ self . inner . lock ( ) . receivers . unregister ( oper) . unwrap ( ) ;
272272 Err ( RecvTimeoutError :: Disconnected )
273273 }
274274 Selected :: Operation ( _) => {
@@ -284,7 +284,7 @@ impl<T> Channel<T> {
284284 ///
285285 /// Returns `true` if this call disconnected the channel.
286286 pub ( crate ) fn disconnect ( & self ) -> bool {
287- let mut inner = self . inner . lock ( ) . unwrap ( ) ;
287+ let mut inner = self . inner . lock ( ) ;
288288
289289 if !inner. is_disconnected {
290290 inner. is_disconnected = true ;
0 commit comments