Conversation
Previously if a task was in the front queue, the scheduler's destruction would fail. Also it would fail if a currently executing task would submit a new one during scheduler destruction. It was quite unhandy really. Lets make the scheduler destructor wait until the scheduler gets empty.
It is quite handy when one task needs to spawn another one in the same IOCore. Similar to TaskScheduler::This(). Especially for TCPServer which usually would spawn new TCPSocket/SSLSocket on each accept, inside the same IOCore.
Some installation commands were outdated, like missing certain files or even having typos in the paths. Lets fix them before next commits start using the installation for examples and testing. Part of #21
45a86c5 to
3a5ec01
Compare
f268e66 to
488f7ed
Compare
There was a problem that if a coroutine operation inherited mg::box::CoroOp and had its own members filled in its constructor, then those members would be nullified despite there was no any explicit change in the code to those members. Strangely, it was only happening in GitHub CI macos-latest, and only in one job (the other job in the same workflow was passing ok even more tricky tests). Eventually, debugging with prints right in CI has revealed that apparently the compiler in `co_await SomeOperation()` copies this operation. And if the operation has its copy/move constructors deleted, then the members are not copied. In most cases simply nullified. That looks like a compiler bug, because the copying was explicitly forbidden, and yet it happened. It was confirmed via prints - operation's address (`this`) was one in constructor and another in await_suspend(). Anyway, the fix seems to be just enabling the constructors. Unfortunately, it is not really testable. All the coro tests passed in macos CI and failed only in the future patch introducing examples testing.
'build' job name is not right when it is actually about tests.
The folder shows some usage examples of Serverbox. All of them use only the public Serverbox API. Serverbox for this is properly built and installed the same way as users would do. Closes #21
2fd328e to
974df54
Compare
Lets make sure they compile and run on all supported platforms the same way as users would use Serverbox. With proper installation steps and all that. Closes #20
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.