Listing 8.1 - Compile and runtime fixes#40
Open
ITHelpDec wants to merge 2 commits intoanthonywilliams:mainfrom
Open
Listing 8.1 - Compile and runtime fixes#40ITHelpDec wants to merge 2 commits intoanthonywilliams:mainfrom
ITHelpDec wants to merge 2 commits intoanthonywilliams:mainfrom
Conversation
- there is only one instance of "thread_safe_stack" in the entire book (this example) - in every other instance, the container is named "threadsafe_stack" (only one underscore)
- listing 6.1 does not use boost::shared_ptr<> (there don't seem to be any other instances of boost::shared_ptr<> in the book) - we can either change this or modify 6.1 (although we need to modify it anyway to prevent the throw)
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.
PR in response to issue #39.
In order for this code to run, we must perform the following commits and amend listing 6.1 to return an empty shared pointer at line 37 instead of throwing.
Tested with a simple list of ints, but will investigate with larger containers of varying types to benchmark speed comparisons.
Test case - (click to expand / collapse)
I'm attempting to try implement the same sorter with our lock-free stack, but issues exist in all of the implementations provided in chapter 7, and
boostis showing data races with Thread Sanitiser, so I'll come back to this when I know where to start.A relatively simple fix, but it would just be nice if it worked out of the box instead of having to correct it.