HideInCallstackAttribute
класс в UnityEngine
Выполнено в:UnityEngine.CoreModule
Описание
Помечает методы, которые вы хотите скрыть из стека вызовов окна Консоли. Когда вы скрываете эти методы, они удаляются из области подробностей выбранного сообщения в окне Консоли.
Примечание: Предназначение HideInCallstackAttribute — уменьшить беспорядок в стеке вызовов путем сокрытия тривиальных методов помощи. Если вы примените [HideInCallstack] к методу, который фактически записывает в журнал, хотя его имя и скрыто из представления подробностей, окно Консоли по-прежнему предоставляет ссылку на вызываемый метод.
Чтобы скрыть отмеченные методы, нажмите кнопку меню Консоль и выберите Убирать стек вызовов из логов из меню.
//This example demonstrates hiding of a helper method from the Console call stack. //Toggle the "Strip logging callstack" option in the Console menu to see the effect.
using UnityEngine;
public class HideInCallstackExample : MonoBehaviour { void Start() { // This call goes through a hidden helper before reaching the actual log writer. // The hidden helper will not appear in the call stack. LogThroughHiddenHelper("[HideInCallstack] Message via hidden helper.");
// This call goes directly to the actual log writer. LogDirect("Direct message."); }
// Hidden helper: is not shown in the Console's call stack. [HideInCallstack] private static void HiddenHelper(object msg) { ActualLogWriter(msg); }
// Public entry that uses the hidden helper. public static void LogThroughHiddenHelper(object msg) { HiddenHelper(msg); }
// Public entry that calls the actual logger directly (for comparison). public static void LogDirect(object msg) { ActualLogWriter(msg); }
// The final method that actually writes to the Unity console and remains visible in the call stack. private static void ActualLogWriter(object msg) { Debug.Log(msg); } }