Skip to content

sco_plugin_unload

void sco_plugin_unload(void); final normal lifecycle call for that instance

void (void)

Service index

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

Header source

void sco_plugin_unload(void); final normal lifecycle call for that instance

void, no error result; loader guards faults. Capability availability during teardown unspecified

unspecified

Plugin frees its own state and stops its workers; host owns API/self/registries; borrowed external pointers must not be freed

Normal host lifecycle uses game-thread release; an independent export thread guarantee and recursive reentrancy are unspecified

unspecified

unspecified

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.

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.h
sco_plugin_unload(void)
cpp typed-wrapper include/scosdk/plugin.hpp
extern “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.md
A Lua plugin is a folder with plugin.ini (kind = lua, entry = main.lua)

ABI pins prove layout, not semantic behavior or a live game session.