Home
  • Manual
  • Node Index
  • API
  • Changelog
Search Results for

    Show / Hide Table of Contents
    • InsaneScatterbrain
      • AStarPathfinder
      • Calc
      • Color32EqualityComparer
      • EqualityComparer
      • RandomPathWalker
      • TrigMath
    • InsaneScatterbrain.DataStructures
      • Pair<T>
    • InsaneScatterbrain.DelaunatorSharp
      • DelaunatorNoAlloc
    • InsaneScatterbrain.Dependencies
      • DependencyContainer
      • DependencyNotFoundException
      • IDependencyContainer
    • InsaneScatterbrain.Editor.Services
      • Assets
    • InsaneScatterbrain.Editor.Updates
      • UpdateAction
      • Updater
    • InsaneScatterbrain.Extensions
      • ColorExtensions
      • ExceptionExtensions
      • FieldInfoExtensions
      • HashSetExtensions
      • IntExtensions
      • ListExtensions
      • RandomExtensions
      • SortedListExtensions
      • StackExtensions
      • Texture2DDrawingExtensions
      • Texture2DExtensions
      • TypeExtensions
      • Vector2Extensions
      • Vector2IntExtensions
      • Vector3Extensions
      • Vector3IntExtensions
    • InsaneScatterbrain.MapGraph
      • AddFloatsNode
      • AddFloatToVector2Node
      • AddFloatToVector3Node
      • AddIntsNode
      • AddIntToVector2IntNode
      • AddIntToVector3IntNode
      • AddRandomEdgesNode
      • AddVector2IntsNode
      • AddVector2sNode
      • AddVector3IntsNode
      • AddVector3sNode
      • ApplyMaskNode
      • Area
      • AreaExtractor
      • AreaGraph
      • AreaGraphBuilder
      • AreaGraphEdge
      • AreaGraphEdgePool
      • AreaGraphPool
      • AreaPool
      • AreasCentroidPointsNode
      • AreasSpecialBorderPointsNode
      • AreasToPointsNode
      • AStarPathsNode
      • BasicMathOperationNode<T>
      • BasicMathOperationNode<T1, T2, TOut>
      • BspLeafCenterPointsNode
      • BspNode
      • BspNodePool
      • BspTree
      • BspTreePool
      • CellularAutomataSmoothingNewNode
      • CellularAutomataSmoothingNode
      • ChangeTextureSizeNode
      • ClampFloatsNode
      • ClampIntsNode
      • CollectionPool<TCollection, TValue>
      • ConnectAreaGraphCentroidsNode
      • ConnectAreaGraphClosestBorderPointsNode
      • ConnectAreaGraphRandomPointsNode
      • ConnectedPointsToPointsNode
      • ConvertTextureToTilemapNode
      • CopyTilemapDataNode
      • CornerPointsNode
      • CurrentOrEmptyTextureNode
      • DataToTextureNode
      • DictionaryPool<TDictionary, TKey, TValue>
      • DivideFloatsNode
      • DivideIntsNode
      • DivideVector2ByFloatNode
      • DivideVector2IntByIntNode
      • DivideVector2IntsNode
      • DivideVector2sNode
      • DivideVector3ByFloatNode
      • DivideVector3IntByIntNode
      • DivideVector3IntsNode
      • DivideVector3sNode
      • DomainWarpFractalType
      • DomainWarpType
      • DrawAreasNode
      • DrawBorderNode
      • DrawCirclesNode
      • DrawConnectionsBiasedRandomWalkNode
      • DrawGridNode
      • DrawManhattanConnectionsNode
      • DrawNoiseThresholdNode
      • DrawOutlineNode
      • DrawPathsNode
      • DrawPointsNode
      • DrawRectsNode
      • DrawShortestPathNode
      • EmptyTextureNode
      • ExtractAreasNode
      • ExtractColorNode
      • ExtractPointsNode
      • ExtractPointsWithNeighboursNode
      • FastNoiseEnum
      • FlipTextureNode
      • FractalType
      • GameObjectsFromTextureFactory
      • GenerateAreaGraphNode
      • GenerateMstAreaGraphNode
      • GenerateRstAreaGraphNode
      • HexagonalGridOffsetType
      • InvertMaskNode
      • IObjectType<TEntry, TObject>
      • IObjectTypeEntry<T>
      • IObjectTypeSet<TType, TObject>
      • LinePathsNode
      • ListPool<TValue>
      • LoadTextureData
      • MapGraphGraph
      • MapGraphTilemapPrefab
      • Mask
      • MaskPool
      • MaxFloatsNode
      • MaxIntsNode
      • MergeAreasNode
      • MergeMasksNode
      • MergePathsNode
      • MergePointPairsNode
      • MergePointsNode
      • MergeTilemapsNode
      • MinFloatsNode
      • MinIntsNode
      • MultiplyFloatsNode
      • MultiplyIntsNode
      • MultiplyVector2ByFloatNode
      • MultiplyVector2IntByIntNode
      • MultiplyVector2IntsNode
      • MultiplyVector2sNode
      • MultiplyVector3ByFloatNode
      • MultiplyVector3IntByIntNode
      • MultiplyVector3IntsNode
      • MultiplyVector3sNode
      • NamedColor
      • NamedColorNode
      • NamedColorSet
      • NoiseNode
      • ObjectType<TEntry, TObject>
      • ObjectTypeEntry<T>
      • ObjectTypeSet<TType, TEntry, TObject>
      • ObjectTypeSetScriptableObject<TType, TEntry, TObject>
      • OpenObjectTypeSet<TType, TEntry, TObject>
      • Outliner
      • PerlinNoiseFillTextureNode
      • PointsToAreasNode
      • PoolInitializer
      • PowerNode
      • PrefabSet
      • PrefabType
      • PrefabTypeEntry
      • RandomBoolNode
      • RandomBspRoomsNode
      • RandomBspTreeNode
      • RandomColorNode
      • RandomExtensions
      • RandomFloatNode
      • RandomIntNode
      • RandomlyFillTextureNode
      • RandomlyStampTilemapsNode
      • RandomNode<T>
      • RandomNoiseNode
      • RandomPointsNode
      • RandomPointsPerAreaNode
      • RandomRectsNode
      • RandomRngStateNode
      • RandomVector2IntNode
      • RandomVector2Node
      • RandomVector3IntNode
      • RandomVector3Node
      • RandomWalkerNode
      • RandomWalkerPathsNode
      • RangeRandomNode<T>
      • RectCenterPointsNode
      • RectsToAreasNode
      • ReplaceColorNode
      • ReplaceGameObjectChildrenNode
      • ResizeTextureNode
      • RotateTextureNode
      • RotationalSymmetry
      • SaveData
      • SaveTextureData
      • ScaleTextureNode
      • ScaleTextureToNode
      • ScaleTextureVector2Node
      • ShiftTextureNode
      • SplitConnectionsManhattanNode
      • SquareRootNode
      • StackPool<T>
      • StampNode
      • SubtractFloatFromVector2Node
      • SubtractFloatFromVector3Node
      • SubtractFloatsNode
      • SubtractIntFromVector2IntNode
      • SubtractIntFromVector3IntNode
      • SubtractIntsNode
      • SubtractMaskNode
      • SubtractVector2IntsNode
      • SubtractVector2sNode
      • SubtractVector3IntsNode
      • SubtractVector3sNode
      • TextureData
      • TextureData.Color32ArrayFacade
      • TextureDataDrawingExtensions
      • TextureDataExtensions
      • TextureDataPool
      • TextureSizeNode
      • TextureToChildGameObjectsNode
      • TextureToDataNode
      • TextureToGameObjectsNode
      • TextureToMaskNode
      • TextureToNoiseDataNode
      • TextureToTilemapNode
      • TilemapData
      • TilemapDataPool
      • TilemapSet
      • TilemapToDataNode
      • TilemapToTextureNode
      • TilemapType
      • TilemapTypeEntry
      • Tileset
      • TileType
      • TileTypeEntry
      • TransparentColorNode
      • Vector2IntComparer
      • Vector2IntFromFloats
      • Vector2IntFromInts
      • Vector2IntToInts
      • Vector2IntToVector2
      • Vector3IntComparer
      • WaveformFunctionCollapseNode
    • InsaneScatterbrain.MapGraph.Editor
      • AboutWindow
      • AddRandomEdgesNodeView
      • ApplyMaskNodeView
      • AreaSpecialPointsNodeView
      • AStarPathsNodeView
      • CellularAutomataSmoothingNodeNewView
      • CellularAutomataSmoothingNodeView
      • CellularDistanceFunctionConstantNodeView
      • CellularReturnTypeConstantNodeView
      • ChangeTextureSizeNodeView
      • ConnectionsNodeView
      • CornerPointsNodeView
      • DataSetList<T>
      • DataSetListBase<T>
      • DomainWarpFractalTypeNodeView
      • DomainWarpTypeConstantNodeView
      • DrawAreasNodeView
      • DrawBorderNodeView
      • DrawCirclesNodeView
      • DrawConnectionsBiasedRandomWalkNodeView
      • DrawGridNodeView
      • DrawManhattanConnectionsNodeView
      • DrawNoiseThresholdNodeView
      • DrawOutlineNodeView
      • DrawPathsNodeView
      • DrawPointsNodeView
      • DrawRectsNodeView
      • DrawShortestPathConnectionsNodeView
      • EmptyTextureNodeView
      • EnumConstantNodeView<T>
      • ExtractAreasNodeView
      • ExtractColorNodeView
      • ExtractPointsNodeView
      • ExtractPointsWithNeighboursNodeView
      • FlipTextureNodeView
      • FractalTypeNodeView
      • GenerateAreaGraphNodeView
      • GenerateMstAreaGraphNodeView
      • GenerateRstAreaGraphNodeView
      • Initializer
      • InputParametersList
      • InvertMaskNodeView
      • LinePathsNodeView
      • ListBase
      • MapGraphAsset
      • MapGraphAssetUpdater
      • MapGraphCreateMenu
      • MapGraphEditor
      • MapGraphEditorInfo
      • MapGraphEditorSettingsWindow
      • MapGraphEditorSettingsWindowInitializer
      • MapGraphInitializer
      • MapGraphUpdater
      • MergeAreasNodeView
      • NamedColorNodeView
      • NamedColorSetEditor
      • NamedColorSetList
      • NewUpdatesWindow
      • NoiseNodeView
      • NoiseTypeNodeView
      • ObjectTypeEntryList<TType, TEntry, TObject>
      • ObjectTypeSetList<TType, TEntry, TObject>
      • OutputParametersList
      • ParametersList
      • PerlinNoiseFillTextureNodeView
      • PrefabSetEditor
      • PrefabTypeEntryList
      • PrefabTypeList
      • ProcessGraphNodeView
      • RandomBspRoomsNodeView
      • RandomBspTreeNodeView
      • RandomlyFillTextureNodeView
      • RandomlyStampTilemapsNodeView
      • RandomPointsNodeView
      • RandomPointsPerAreaNodeView
      • RandomRectsNodeView
      • RandomWalkerNodeView
      • RandomWalkerPathsNodeView
      • ReplaceColorNodeView
      • ResizeTextureNodeView
      • RotateTextureNodeView
      • RotationalSymmetryNodeView
      • RotationType3dConstantNodeView
      • ScaleTextureNodeView
      • ScaleTextureToNodeView
      • ScaleTextureVector2NodeView
      • ScriptGraphAssetUpdater
      • ScriptNodeViewExtensions
      • ShiftTextureNodeView
      • StampNodeView
      • TextureConstantNodeView
      • TextureToMaskNodeView
      • TilemapConstantNodeView
      • TilemapPrefabEditor
      • TilemapSetConstantNodeView
      • TilemapSetEditor
      • TilemapToTextureNodeView
      • TilemapTypeEntryList
      • TilemapTypeList
      • TilesetConstantNodeView
      • TilesetEditor
      • TileTypeEntryList
      • TileTypeList
      • TransparentColorNodeView
      • UpdateAction_1_10
      • UpdateAction_1_14
      • UpdateAction_1_15
      • UpdateAction_1_2
      • UpdateAction_1_26_1
      • UpdateChecker
      • WaveformFunctionCollapseNodeView
    • InsaneScatterbrain.Pooling
      • IPool
      • Pool<T>
      • PoolManager
    • InsaneScatterbrain.RandomNumberGeneration
      • Rng
      • RngState
    • InsaneScatterbrain.ScriptGraph
      • BoolParameterField
      • BoundsIntParameterField
      • BoundsParameterField
      • Color32ParameterField
      • ComponentDependency
      • ConstantNode
      • ConsumerNode
      • CopyData
      • CopyPaste
      • DataDependency
      • DataSet<T>
      • DataSetItem
      • DataSetScriptableObject<TItem, TOpenSet>
      • DataSetScriptableObject<TItem>
      • ExecutionGraph
      • ExecutionGraphBuilder
      • ExplicitInPortTypesAttribute
      • ExplicitOutPortTypesAttribute
      • ExplicitPortTypesAttribute
      • FloatParameterField
      • IConsumerNode
      • IDataSet
      • IDataSet<T>
      • IDataSetItem
      • IdDeduplicator
      • IInstanceProvider
      • IncompatiblePortTypeException
      • INode
      • InPort
      • InPortAttribute
      • InputNode
      • IntParameterField
      • IOpenDataSet<T>
      • IParameterField
      • IPool
      • IPoolInitializer
      • IPreparable
      • IProcessorNode
      • IProviderNode
      • IScriptGraphInstanceProvider
      • IScriptNode
      • NewInstanceProvider
      • NewScriptGraphInstanceProvider
      • NodeEdge
      • ObjectParameterField
      • OpenDataSet<T>
      • OutPort
      • OutPortAttribute
      • OutputNode
      • PairVector2IntParameterField
      • Pool<T>
      • PoolManager
      • PoolManagerInitializer
      • PoolManagerSingleton
      • Pools
      • PortAttribute
      • PortNotFoundException
      • ProcessGraphNode
      • ProcessorNode
      • ProviderNode
      • RectIntParameterField
      • RectParameterField
      • RequiredPortNotConnectedException
      • RngExtensions
      • ScriptGraphComponents
      • ScriptGraphEditorInfo
      • ScriptGraphGraph
      • ScriptGraphInput
      • ScriptGraphInput<T>
      • ScriptGraphInputBool
      • ScriptGraphInputBounds
      • ScriptGraphInputBoundsInt
      • ScriptGraphInputColor32
      • ScriptGraphInputFloat
      • ScriptGraphInputFloatAsInt
      • ScriptGraphInputInt
      • ScriptGraphInputObject
      • ScriptGraphInputRect
      • ScriptGraphInputRectInt
      • ScriptGraphInputString
      • ScriptGraphInputTexture2D
      • ScriptGraphInputTilemap
      • ScriptGraphInputTilemapSet
      • ScriptGraphInputTileset
      • ScriptGraphInputVector2
      • ScriptGraphInputVector2Int
      • ScriptGraphInputVector3
      • ScriptGraphInputVector3Int
      • ScriptGraphMonoBehaviour
      • ScriptGraphParameter
      • ScriptGraphParameters
      • ScriptGraphPool
      • ScriptGraphPoolManager
      • ScriptGraphPoolManagerSingleton
      • ScriptGraphPort
      • ScriptGraphProcessor
      • ScriptGraphRunner
      • ScriptNode
      • ScriptNodeAttribute
      • SeedType
      • StringParameterField
      • Vector2IntParameterField
      • Vector2ParameterField
      • Vector3IntParameterField
      • Vector3ParameterField
    • InsaneScatterbrain.ScriptGraph.Editor
      • BoolConstantNodeView
      • BoundsConstantNodeView
      • BoundsIntConstantNodeView
      • ColorConstantNodeView
      • ComponentDependencyListFactory
      • ConstantNodeView
      • ConstantNodeViewAttribute
      • DataDependencyListFactory
      • FloatConstantNodeView
      • GroupNodeView
      • InputNodeView
      • IntConstantNodeView
      • NodeDuplicator
      • NodeFactory
      • ObjectConstantNodeView
      • OutPortEdgeConnectListener
      • OutputNodeView
      • OutputParameterResultFormatter
      • OutputParameterResultWindow
      • RandomBspRoomsPreviewBehaviour
      • RectConstantNodeView
      • RectIntConstantNodeView
      • ScriptGraphContextMenu
      • ScriptGraphDebugger
      • ScriptGraphDependencyInstaller
      • ScriptGraphEditor
      • ScriptGraphInitializer
      • ScriptGraphInputEditor
      • ScriptGraphRunnerEditor
      • ScriptGraphSearchBar
      • ScriptGraphValidator
      • ScriptGraphView
      • ScriptGraphViewSelection
      • ScriptGraphViewWindow
      • ScriptNodeView
      • ScriptNodeViewAttribute
      • ScriptNodeViewFactory
      • ScriptNodeViewTypesRegistry
      • StringConstantNodeView
      • Urls
      • Vector2ConstantNodeView
      • Vector2IntConstantNodeView
      • Vector3ConstantNodeView
      • Vector3IntConstantNodeView
    • InsaneScatterbrain.ScriptGraph.Editor.NodeSearch
      • ConstantEntryRegistry
      • DefaultEntryRegistry
      • EntryData
      • EntryFactory
      • GraphEntryRegistry
      • IEntryRegistry
      • InputParametersEntryRegistry
      • ISearchFilter
      • NodeSearchWindow
      • NodeType
      • OutputParametersEntryRegistry
      • ParametersEntryRegistry
      • PortFilter
    • InsaneScatterbrain.Serialization
      • ArraySerializer<T>
      • BoundsIntSerializer
      • BoundsSerializer
      • DataBag
      • DefaultArraySerializer
      • IDeserializer
      • ISerializer
      • RectIntSerializer
      • RectSerializer
      • Serializer
      • Vector2IntSerializer
      • Vector3IntSerializer
    • InsaneScatterbrain.Services
      • Disposer
      • Rng
      • Texture2DFactory
      • Types
    • InsaneScatterbrain.Threading
      • IMainThreadCommand
      • IMainThreadCommandHandler
      • IMainThreadCoroutineCommand
      • IMainThreadCoroutineCommandHandler
      • MainThread
      • MainThreadCommand
      • MainThreadCommandHandler
      • MainThreadCoroutine
      • MainThreadCoroutineCommand
      • MainThreadCoroutineCommandHandler
      • MainThreadUpdater
    • InsaneScatterbrain.Versioning
      • IVersioned
      • SerializedVersion
      • VersionedMonoBehaviour
      • VersionedScriptableObject

    Class MainThread

    Allows calls onto the main thread from any other thread. This can be necessary, because the Unity API is only accessible from the main thread for the most part.

    Inheritance
    object
    MainThread
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: InsaneScatterbrain.Threading
    Syntax
    public static class MainThread

    Properties

    CommandHandler

    The command handler that's used to handle any commands given.

    Declaration
    public static IMainThreadCommandHandler CommandHandler { get; set; }
    Property Value
    Type Description
    IMainThreadCommandHandler

    CoroutineCommandHandler

    Declaration
    public static IMainThreadCoroutineCommandHandler CoroutineCommandHandler { get; set; }
    Property Value
    Type Description
    IMainThreadCoroutineCommandHandler

    IsCurrent

    Declaration
    public static bool IsCurrent { get; }
    Property Value
    Type Description
    bool

    Methods

    Cancel()

    Stops executing any commands that might be running as soon as possible.

    Declaration
    public static void Cancel()

    Execute(IMainThreadCommand, bool)

    Executes the given action on the main thread.

    Declaration
    public static void Execute(IMainThreadCommand command, bool waitForCompletion = true)
    Parameters
    Type Name Description
    IMainThreadCommand command

    The command to execute on the main thread.

    bool waitForCompletion

    Whether or not the calling thread should wait for completion of this command before continuing code execution.

    Execute(IMainThreadCoroutineCommand, bool)

    Declaration
    public static void Execute(IMainThreadCoroutineCommand command, bool waitForCompletion = true)
    Parameters
    Type Name Description
    IMainThreadCoroutineCommand command
    bool waitForCompletion

    Execute(Action, bool)

    Executes the given action on the main thread.

    Declaration
    [Obsolete("This overload will likely be removed in 2.0.")]
    public static void Execute(Action action, bool waitForCompletion = true)
    Parameters
    Type Name Description
    System.Action action

    The action to execute on the main thread.

    bool waitForCompletion

    Whether or not the calling thread should wait for completion of this command before continuing code execution.

    Initialize()

    This is called on load (either in the editor or in a build) from the main thread, so that a reference to the main thread is stored to execute commands on.

    Declaration
    [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSceneLoad)]
    public static void Initialize()

    Update()

    Handles the execution for queued commands.

    Declaration
    public static void Update()

    UpdateCoroutine()

    Handles the execution for queued coroutine commands.

    Declaration
    public static IEnumerator UpdateCoroutine()
    Returns
    Type Description
    System.Collections.IEnumerator
    In This Article
    Back to top Generated by DocFX