![]() |
VOOZH | about |
dotnet add package WACS.WASI.Threads --version 0.2.1
NuGet\Install-Package WACS.WASI.Threads -Version 0.2.1
<PackageReference Include="WACS.WASI.Threads" Version="0.2.1" />
<PackageVersion Include="WACS.WASI.Threads" Version="0.2.1" />Directory.Packages.props
<PackageReference Include="WACS.WASI.Threads" />Project file
paket add WACS.WASI.Threads --version 0.2.1
#r "nuget: WACS.WASI.Threads, 0.2.1"
#:package WACS.WASI.Threads@0.2.1
#addin nuget:?package=WACS.WASI.Threads&version=0.2.1Install as a Cake Addin
#tool nuget:?package=WACS.WASI.Threads&version=0.2.1Install as a Cake Tool
wasi-threads host adapter for the
WACS WebAssembly runtime — implements
wasi:thread-spawn on top of Wacs.Core's built-in atomics + wait/notify operations.
Lets shared-memory wasm modules spawn worker threads against a real System.Threading
backend.
dotnet add package WACS.WASI.Threads
The wasm module must:
shared flag set).wasi_thread_start (param i32 i32) — the worker entry point. WACS calls
this with the thread ID (i32) and a user-supplied start argument (i32) per
wasi-threads' spec.using Wacs.Core.Runtime;
using Wacs.WASI.Threads;
var runtime = new WasmRuntime();
runtime.UseWasiThreads(); // wires wasi:thread-spawn
// (optionally chain other host packages: UseWasiPreview1 / UseWasiPreview2 / ...)
var module = BinaryModuleParser.ParseWasm(File.OpenRead("threaded.wasm"));
var inst = runtime.InstantiateModule(module);
runtime.RegisterModule("app", inst);
if (runtime.TryGetExportedFunction(("app", "_start"), out var addr))
runtime.CreateInvokerAction(addr).Invoke();
wacs run threaded.wasm --wasi-threads
--wasi-threads is shorthand for --bind Wacs.WASI.Threads. The CLI verifies the module
declares shared memory and exports wasi_thread_start before instantiation; missing
either trips a clear startup error.
WasiThreadsBindable : IBindable — discovers WACS_WASINN_GGUF_DIR-style host
surface, wires wasi:thread-spawn against the shared runtimeruntime.UseWasiThreads() — chained extension method[assembly: WasiHostPackage] marker so runtime.AutoDiscoverHostPackages() picks
this assembly up automatically when it's loaded into the AppDomaindocs/COMPONENT_CHAINING.md
for runtime-requirements composition with other WASI host packagesApache-2.0
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 net5.0 was computed. net5.0-windows net5.0-windows was computed. net6.0 net6.0 was computed. net6.0-android net6.0-android was computed. net6.0-ios net6.0-ios was computed. net6.0-maccatalyst net6.0-maccatalyst was computed. net6.0-macos net6.0-macos was computed. net6.0-tvos net6.0-tvos was computed. net6.0-windows net6.0-windows was computed. net7.0 net7.0 was computed. net7.0-android net7.0-android was computed. net7.0-ios net7.0-ios was computed. net7.0-maccatalyst net7.0-maccatalyst was computed. net7.0-macos net7.0-macos was computed. net7.0-tvos net7.0-tvos was computed. net7.0-windows net7.0-windows was computed. net8.0 net8.0 is compatible. net8.0-android net8.0-android was computed. net8.0-browser net8.0-browser was computed. net8.0-ios net8.0-ios was computed. net8.0-maccatalyst net8.0-maccatalyst was computed. net8.0-macos net8.0-macos was computed. net8.0-tvos net8.0-tvos was computed. net8.0-windows net8.0-windows was computed. net9.0 net9.0 was computed. net9.0-android net9.0-android was computed. net9.0-browser net9.0-browser was computed. net9.0-ios net9.0-ios was computed. net9.0-maccatalyst net9.0-maccatalyst was computed. net9.0-macos net9.0-macos was computed. net9.0-tvos net9.0-tvos was computed. net9.0-windows net9.0-windows was computed. net10.0 net10.0 was computed. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
| .NET Core | netcoreapp3.0 netcoreapp3.0 was computed. netcoreapp3.1 netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.1 netstandard2.1 is compatible. |
| MonoAndroid | monoandroid monoandroid was computed. |
| MonoMac | monomac monomac was computed. |
| MonoTouch | monotouch monotouch was computed. |
| Tizen | tizen60 tizen60 was computed. |
| Xamarin.iOS | xamarinios xamarinios was computed. |
| Xamarin.Mac | xamarinmac xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos xamarinwatchos was computed. |
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.