if i drop an any Channel
instance, will the channel be closed automatically?
No. Explicit lifecycles with knowable resource usage is a core pillar of the whole NIO family. Fully closing a Channel
cannot be done in a deinit
because it cannot be done synchronously.
If you do want to initiate the shutdown of a Channel
from deinit
, you would wrap the Channel
in your own thing that calls self.channel.close(promise: nil)
in its deinit.
1 Like