Skip to content

API Host RuntimeOptions

Liu.Yandong.Hanks edited this page Aug 19, 2026 · 3 revisions

RuntimeOptions

脚本执行时的运行时设置

Runtime settings used while scripts execute

.NET Host API 目录

概述

RuntimeOptionsEngineOptions.Runtime 的不可变快照。通过 EngineOptions.WithRuntimeRuntimeOptionsBuilder 配置。

RuntimeOptions is the immutable EngineOptions.Runtime snapshot. Configure it through EngineOptions.WithRuntime and RuntimeOptionsBuilder.

读取属性

Read properties

  • Default
    默认运行时设置。

    Default runtime settings.
    var options = RuntimeOptions.Default;

  • EnableHotReload
    是否允许 DynamicPatchHotPatch

    Allows DynamicPatch and HotPatch.
    var enabled = options.EnableHotReload;

  • JsonSerializer
    JSON 序列化实现。

    JSON serializer implementation.
    var serializer = options.JsonSerializer;

  • DateTimeFormat
    Date.toString() 默认格式。

    Default Date.toString() format.
    var format = options.DateTimeFormat;

  • ConsoleStdOut
    console.log 输出位置。

    console.log destination.
    var writer = options.ConsoleStdOut;

  • ConsoleErrorOut
    console.error 输出位置。

    console.error destination.
    var writer = options.ConsoleErrorOut;

  • StringPooling
    字符串池策略。

    String-pooling strategy.
    var pooling = options.StringPooling;

RuntimeOptionsBuilder 属性与 With... 方法

Parameters:

  • value 为目标布尔值、序列化器、格式字符串、TextWriterStringPoolingStrategy

    value is the desired Boolean, serializer, format string, TextWriter, or StringPoolingStrategy.

Returns

WithHotReloadWithJsonSerializerWithDateTimeFormatWithConsoleStdOutWithConsoleErrorOutWithStringPooling 都返回同一 Builder,便于链式调用。

All listed With... methods return the same builder for chaining.

var options = EngineOptions.Default.WithRuntime(builder =>
{
    builder.HotReload = true;
    builder.DateTimeFormat = "yyyy-MM-dd HH:mm:ss";
    builder.ConsoleStdOut = Console.Out;
    builder.ConsoleErrorOut = Console.Error;
    builder.WithStringPooling(StringPoolingStrategy.Intern);
});

StringPooling 是进程级行为时应避免在并发 Engine 间使用相互冲突的策略。

When StringPooling is process-wide, avoid conflicting policies across concurrent engines.

Clone this wiki locally