thu*_*eys 18 c# mono android xamarin
自从我升级到Visual Studio 2017 15.3.0后,我的xamarin android应用程序不断打印以下调试输出:
08-15 09:13:23.275 D/Mono ( 3119): [0x9a5be930] worker unparking, timeout? no interrupted? no
08-15 09:13:23.275 D/Mono ( 3119): [0x9a5be930] worker parking
08-15 09:13:23.275 D/Mono ( 3119): [0x9a6bf930] worker unparking, timeout? no interrupted? no
08-15 09:13:23.275 D/Mono ( 3119): [0x9a6bf930] worker parking
08-15 09:13:24.275 D/Mono ( 3119): [0x9a87d930] worker unparking, timeout? no interrupted? no
08-15 09:13:24.276 D/Mono ( 3119): [0x9a87d930] worker parking
Run Code Online (Sandbox Code Playgroud)
输出相当规律,每秒几次.
它意味着什么以及可能导致什么?
Edw*_*eld 28
我向微软报告了这个问题.他们复制了这个问题,并打开了一个错误报告.他们还给了我以下解决方案,这对我有用:(从他们的电子邮件中复制)
....似乎Mono默认的详细程度已被更改或[Mono]消息已被移动到info loge详细级别.以下是我为缓解此问题所做的工作:
对于Android,我在项目中添加了一个新的.txt文件,并将它的Build Action设置为AndroidEnvironment.然后我输入以下环境变量:
MONO_LOG_LEVEL=error
Run Code Online (Sandbox Code Playgroud)
在我重新构建解决方案后,我不再看到[Mono]消息被登录到Application Output窗口.
虽然我个人无法在iOS上复制此功能,但上述解决方法在iOS中的工作方式应该相同,但如果没有,请告诉我.您可以通过右键单击iOS项目 - >选项 - > iOS Build来完成此操作.然后在mtouch输入字段中添加以下内容:
--setenv:MONO_LOG_LEVEL=error
Run Code Online (Sandbox Code Playgroud)
这些额外的Mono环境变量会将日志详细程度设置为错误,这应该让[Mono]日志再次显示在输出中.
如果您希望添加日志记录,可以将日志级别更改为消息,但是出于调试目的,错误应该足够了.
如果您想了解有关日志记录详细程度的更多信息,以下文档可以帮助您更深入地了解此信息:http://www.mono-project.com/docs/advanced/runtime/logging-runtime-events/#trace-水平