aboutsummaryrefslogtreecommitdiff
path: root/examples/07_sample_bot_structure/src
diff options
context:
space:
mode:
authorZeyla Hellyer <[email protected]>2017-10-29 11:52:54 -0700
committerZeyla Hellyer <[email protected]>2017-10-29 11:52:54 -0700
commit361658510f3e2eb9aefbe66232b9b1f1a1ebb80f (patch)
tree801f27a73807e549915971c2e0c2d308c030cb0c /examples/07_sample_bot_structure/src
parentAdd logging and dotenv to example 07 (diff)
downloadserenity-361658510f3e2eb9aefbe66232b9b1f1a1ebb80f.tar.xz
serenity-361658510f3e2eb9aefbe66232b9b1f1a1ebb80f.zip
Fix shard shutdown via Context
This fixes the shard shutdown via the Context. This works by setting a "shutdown" field on the Shard struct as being true, indicating that the Shard has shutdown. The Shard Runner detects this and requests a shutdown from the Shard Manager. The ideal solution here would be to add a "Shutdown" variant to serenity::gateway::ConnectionStage, but that would be a breaking change, so we instead need to opt for adding a new struct to gateway::Shard. The Shard Manager has also been updated to only attempt the shutdown of a shard if it doesn't already know for certain that it shut itself down, which avoids an error logged saying that there was an error sending a shutdown message to its Shard Runner. When all shards have been shutdown (for most bots, this will only be one), the Shard Manager will end and the Client will stop its operations, returning thread control to the user.
Diffstat (limited to 'examples/07_sample_bot_structure/src')
0 files changed, 0 insertions, 0 deletions