2017-08-15 90 views
18

我xamarin Android应用不断打印如下调试输出,因为我升级到Visual Studio 2017 15.3.0:奇怪的调试输出,因为升级到Visual Studio 2017 15.3.0

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 

输出是相当规则,每秒几次。

这是什么意思,什么可能导致它?

编辑:现在有一个bug report regarding this

回答

28

我报告的问题给微软。他们复制了这个问题并打开了一个错误报告。他们还给了我以下解决方法,这对我有用:(从他们的电子邮件复制)

....似乎单声道默认冗长度已被更改或[单声道]消息已被移入信息爱好详细程度。以下是我为减轻此问题所做的工作:

对于Android,我向该项目添加了一个新的.txt文件,并将其设置为Android Action的Build Action。然后我把下面的环境变量:我重新建立了解决方案

MONO_LOG_LEVEL=error 

后,我再也看不到被记录到应用程序输出窗口中的[单声道]消息。

尽管我并不是无法亲自在iOS上进行复制,但上述解决方法应该可以在iOS中使用,但是请不要让我知道。你可以通过右键点击你的iOS项目 - >选项 - > iOS生成。然后添加以下的mTouch触摸输入字段:

--setenv:MONO_LOG_LEVEL=error 

这些额外的单声道环境变量将设置日志级别为错误,应该具备哪些[单声道]日志中获取显示在输出了。

如果您希望添加日志记录,则可以将日志级别更改为消息,但出于调试目的,错误应该足够了。

如果您想在日志记录的级别更多的信息,下面的文档可帮助提供更深入地了解这一点:http://www.mono-project.com/docs/advanced/runtime/logging-runtime-events/#trace-levels约Xamarin的Android环境

+0

更多信息作为解决方案所指出的,可以在这里找到:HTTPS: //developer.xamarin.com/guides/android/advanced_topics/environment/ – jorgen

+0

感谢您报告问题。我没有看到最新的Xamarin.Android版本的问题。 –