piwebasync/websockets/client.py
async def _ensure_open(self) -> None:
        """
        Check if channel is open

        If `update` is called, the channel will appear to be closed.
        Calls to `recv` will wait to aquire the lock indicating the
        update process finished before assessing the state of the channel.

        If an error occurred during channel operation, this method
        will raise ~piwebasync.exceptions.ChannelClosedError otherwise,
        if the channel is closed or closing it will raise
        ~piwebasync.exceptions.ChannelClosedOK

        Raises:
            - ChannelClosed
        """
        
        async with self._update_lock:
            if self.is_closed or self.is_closing:
                self._raise_channel_exc()

        Check if channel is open

        If `update` is called, the channel will appear to be closed.
        Calls to `recv` will wait to aquire the lock indicating the
        update process finished before assessing the state of the channel.

        If an error occurred during channel operation, this method
        will raise ~piwebasync.exceptions.ChannelClosedError otherwise,
        if the channel is closed or closing it will raise
        ~piwebasync.exceptions.ChannelClosedOK

        Raises:
            - ChannelClosed
        
Check if channel is open
If `update` is called, the channel will appear to be closed.
Calls to `recv` will wait to aquire the lock indicating the
update process finished before assessing the state of the channel.

If an error occurred during channel operation, this method
will raise ~piwebasync.exceptions.ChannelClosedError otherwise,
if the channel is closed or closing it will raise
~piwebasync.exceptions.ChannelClosedOK


Check if channel is open If ` update ` is called the channel will appear to be closed . Calls to ` recv ` will wait to aquire the lock indicating the update process finished before assessing the state of the channel . If an error occurred during channel operation this method will raise ~piwebasync . exceptions . ChannelClosedError otherwise if the channel is closed or closing it will raise ~piwebasync . exceptions . ChannelClosedOK
async def _ensure_open(self) -> None:
        async with self._update_lock:
            if self.is_closed or self.is_closing:
                self._raise_channel_exc()
async def _ensure_open ( self ) -> None : async with self . _update_lock : if self . is_closed or self . is_closing : self . _raise_channel_exc ( )
Check if channel is open
If `update` is called, the channel will appear to be closed.
Check if channel is open If ` update ` is called the channel will appear to be closed .
"""
        Check if channel is open

        If `update` is called, the channel will appear to be closed.
        Calls to `recv` will wait to aquire the lock indicating the
        update process finished before assessing the state of the channel.

        If an error occurred during channel operation, this method
        will raise ~piwebasync.exceptions.ChannelClosedError otherwise,
        if the channel is closed or closing it will raise
        ~piwebasync.exceptions.ChannelClosedOK

        Raises:
            - ChannelClosed
        """
self