Add wasm_bindgen::is_memory_shared()#4325
Closed
daxpedda wants to merge 1 commit intowasm-bindgen:mainfrom
Closed
Conversation
This was referenced Dec 6, 2024
Member
Author
|
After some thinking, I might want to close this after all. This was only done with the thought in mind that some users like to use a shared |
Member
Author
|
After some thinking and input from others I decided to close this. It was a good exercise however and the same implementation strategy could be used in the future for other things. |
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.
This PR adds
wasm_bindgen::is_memory_shared(), which simply determines if the memory module is shared or not.Retrieving that information via the
WebAssembly.Memoryinterface is difficult because it requires checking if thebufferis an instance ofSharedArrayBuffer. ButSharedArrayBufferis only available with COOP + COEP. So a workaround could be going through the constructor name.However, the information is already available inside the Wasm module without going through JS at all, so this saves the user from trying to figure out how to do this.