Here is a sample code:
fn listener_thread(self: *Listener) void {
loop: while (!self.shutdown_issued.load(.acquire)) {
defer std.time.sleep(5 * std.time.ns_per_ms); // avoid burning the cpu
const connection = self.server.accept() catch |err| switch (err) {
else => {
continue :loop;
},
};
_ = connection;
}
}
My question is pretty simple: Does "defer" occure even dough I continued (or breaked) the loop ?