sco_plugin_unload
void sco_plugin_unload(void); final normal lifecycle call for that instance
Signature
Section titled “Signature”void (void)Service and availability
Section titled “Service and availability”| Property | Value |
|---|---|
| Symbol | sco_plugin_unload |
| Record ID | sco-plugin-unload |
| Service | native-plugin |
| Table | Native entrypoint (no table) |
| Version macro | SCO_API_MAJOR/SCO_API_MINOR |
| Packed table version | Not applicable |
| Since / availability | API 1.0; no sized parameter |
| Complete member extent (x64 bytes) | None |
| Table size (x64 bytes) | None |
Parameters and buffers
Section titled “Parameters and buffers”void sco_plugin_unload(void); final normal lifecycle call for that instance
Results and failures
Section titled “Results and failures”void, no error result; loader guards faults. Capability availability during teardown unspecified
Absent capability
Section titled “Absent capability”unspecified
Ownership
Section titled “Ownership”Plugin frees its own state and stops its workers; host owns API/self/registries; borrowed external pointers must not be freed
Thread affinity
Section titled “Thread affinity”Normal host lifecycle uses game-thread release; an independent export thread guarantee and recursive reentrancy are unspecified
Callback context
Section titled “Callback context”unspecified
Reentrancy
Section titled “Reentrancy”unspecified
Cleanup and cancellation
Section titled “Cleanup and cancellation”Terminal shutdown or permitted reload; crashed/failed-load instances need not receive it. Live-session unload/reload of a provider whose table was handed out is refused. Retained-provider faults skip unload/resource hooks and require restart; mapped code does not make cached calls safe.
Language mappings
Section titled “Language mappings”Status labels are copied verbatim from the catalogue: direct is native access; typed-wrapper is wrapper-backed; restricted is a subset/adaptation; unsupported means no supported route is established. No status implies universal safety.
| Language | Catalogue status | Source evidence / wrapper tokens |
|---|---|---|
| c | direct | include/sco_api.hsco_plugin_unload(void) |
| cpp | typed-wrapper | include/scosdk/plugin.hppextern “C” SCO_EXPORT void sco_plugin_unload(void) |
| csharp | typed-wrapper | sdk/examples/cs_hello/CsHello.cs[UnmanagedCallersOnly(EntryPoint = “sco_plugin_unload”)]sdk/examples/cs_hello/CsHello.cs PluginExports.Unload( |
| lua | unsupported | sdk/docs/lua.mdA Lua plugin is a folder with |
Examples
Section titled “Examples”- tests/abi_v1.c
- tests/test_plugins.cpp
- sdk/csharp/Sco.Sdk.Tests/FakeHost.cs
- tools/test.sh
- sdk/csharp/Sco.Sdk.Tests/Layout.cs
ABI pins prove layout, not semantic behavior or a live game session.