Reference

Inherits: Object

Inherited By: AESContext, ARVRInterface, ARVRPositionalTracker, AStar, AStar2D, AnimationTrackEditPlugin, AudioEffectInstance, AudioStreamPlayback, CameraFeed, CharFXTransform, ConfigFile, Crypto, DTLSServer, Directory, EditorExportPlugin, EditorFeatureProfile, EditorInspectorPlugin, EditorResourceConversionPlugin, EditorResourcePreviewGenerator, EditorSceneImporter, EditorScenePostImport, EditorScript, EncodedObjectAsID, Expression, File, FuncRef, GDNative, GDScriptFunctionState, HMACContext, HTTPClient, HashingContext, JSONParseResult, JavaClass, JavaScriptObject, KinematicCollision, KinematicCollision2D, MeshDataTool, MultiplayerAPI, Mutex, PCKPacker, PackedDataContainerRef, PacketPeer, Physics2DShapeQueryParameters, Physics2DTestMotionResult, PhysicsShapeQueryParameters, PhysicsTestMotionResult, RandomNumberGenerator, RegEx, RegExMatch, Resource, ResourceFormatLoader, ResourceFormatSaver, ResourceImporter, ResourceInteractiveLoader, SceneState, SceneTreeTimer, Semaphore, SkinReference, SpatialGizmo, SpatialVelocityTracker, StreamPeer, SurfaceTool, TCP_Server, Thread, TriangleMesh, UDPServer, UPNP, UPNPDevice, VisualScriptFunctionState, WeakRef, WebRTCPeerConnection, XMLParser

引用计数对象的基类。

描述

任何保持引用计数对象的基类。 Resource 和许多其他辅助对象继承了这个类。

与其他 Object 类型不同,References 保留一个内部引用计数器,以便在不使用且仅在那时自动释放。因此,不需要使用 Object.free 手动释放引用。

在绝大多数用例中,您只需要实例化和使用 Reference 派生类型。此类中提供的方法仅适用于高级用户,如果误用可能会导致问题。

注意:在C#中,引用不再使用后不会立即释放。相反,垃圾收集将定期运行并释放不再使用的引用。这意味着未使用的引用会在被删除之前停留一段时间。

教程

方法

bool

init_ref ( )

bool

reference ( )

bool

unreference ( )

方法说明

初始化内部引用计数器。只有在你真的知道你在做什么的时候才使用这个。

返回初始化是否成功。


内部引用增量计数器。只有在你真的知道你在做什么的时候才使用这个。

如果增量成功,返回true,否则返回false


  • bool unreference ( )

内部引用减量计数器。只有在你真的知道你在做什么的时候才使用这个。

如果减量成功,返回true,否则返回false