Application.logMessageReceivedThreaded
Описание
Событие, которое запускается при получении сообщения журнала.
Это событие будет запускаться независимо от того, поступает ли сообщение в основной поток или нет. Это означает, что код обработчика должен быть безопасным для потоков. Он может быть вызван из разных потоков и может быть вызван параллельно. Убедитесь, что вы получаете доступ к Unity APIs только из обработчиков, которые разрешены для вызова из потоков, отличных от основного потока.
Примечание: Нет необходимости подписываться на оба Application.logMessageReceived и Application.logMessageReceivedThreaded. Многопоточность варианта также будет вызвана для сообщений на главном потоке.
Примечание: Application.logMessageReceivedThreaded событие запускается, даже если вы используете пользовательский ILogHandler. Это событие срабатывает, когда любое сообщение журнала обрабатывается внутренней системой журналирования Unity, независимо от его источника и от того, как его обрабатывает пользовательский логгер.
Дополнительные ресурсы: Application.logMessageReceived.
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { public string output = ""; public string stack = "";
void OnEnable() { Application.logMessageReceivedThreaded += HandleLog; }
void OnDisable() { Application.logMessageReceivedThreaded -= HandleLog; }
void HandleLog(string logString, string stackTrace, LogType type) { output = logString; stack = stackTrace; } }