在Linux Mint 17上运行MonoDevelop 4.0.12并在使用Random.NextDouble()
时遇到一个奇怪的问题。
考虑一下:
Random r = new Random ();
double dd = r.NextDouble ();
Console.WriteLine (dd);
dd = r.NextDouble ();
Console.WriteLine (dd);
在monodevelop中运行,一切都很好
0.226428853800577
0.331709416335702
(无论我跑多少次)
在monodevelop中进行调试,一切都不是
3.75
0
NextDouble
假设给我一个介于0.0和1.0之间的数字。甚至更奇怪的是,调试器为dd
每次运行时,控制台都会显示不同的(错误的)输出,但调试器会显示相同的内容。
有什么想法吗?
我使用libmono-debugger-soft4.0a-cil作为调试器(v3.2.8 + dfsg-4ubuntu1)。我尝试构建不同版本的.NET并为Random()
提供一个明确的种子,同样的事情。
MonoDevelop
Version 4.0.12
Runtime:
Mono 3.2.8 (Debian 3.2.8+dfsg-4ubuntu1) (64-bit)
GTK 2.24.23
GTK# (2.12.0.0)
答案 0 :(得分:0)
从官方存储库中删除所有mono并从this PPA安装,现在一切正常。
必须是使用Mint 17(Ubuntu 14.04)打包的monodevelop,debugger或runtime中的错误