Linux Mint 17에서 MonoDevelop 4.0.12를 실행하고 Random.NextDouble()
을 사용할 때 이상한 문제가 발생합니다.MonoDevelop에서 디버깅 할 때 잘못된 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
의 두 값에 대한 값에 대해 5.25와 3.5 값을 표시합니다. 콘솔을 실행할 때마다 콘솔에 다른 (잘못된) 출력이 표시되지만 디버거에는 동일한 결과가 표시됩니다.
아이디어가 있으십니까?
저는 libmono-debugger-soft4.0a-cil을 디버거 (v3.2.8 + dfsg-4ubuntu1)로 사용하고 있습니다. NET의 다른 버전에 대한 구축 시도 및 Random()
, 똑같은 expleed 시드를 제공했습니다. this PPA에서
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)
이 결과가 "더 나은"INT DD = (INT) (r.NextDouble() * INT'을 볼 때 .MaxValue);'('double' 변수를 검사하여 값을 분리하려고 시도합니다.) – user2864740
호출 횟수에 관계없이 항상 동일한 값 (2147483645)을 제공합니다. 디스플레이 및 디버거 모두. 달릴 때, 그것은 2 개의 다른 가치를 준다 ...... 매우 이상하다! –
나는 아무것도 얻지 못했다. VS에서 잘 작동합니다. < – user2864740