[VB.NET]多线程下的随机数问题
来源:互联网 发布:合理用药软件 编辑:程序博客网 时间:2024/05/10 12:54
<script type="text/javascript"><!--google_ad_client = "pub-8333940862668978";/* 728x90, 创建于 08-11-30 */google_ad_slot = "4485230109";google_ad_width = 728;google_ad_height = 90;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
多线程下的随机数问题
vb.net 多线程下的随机数,为什么每个线程产生的随机数一样啊,
哪位大哥有解决方法???
**************************************************
Private Function GetRndID(ByVal imin As Integer, ByVal imax As Integer) As Integer
Try
Dim iResult As Integer = 0
Randomize()
iResult = CInt(Int(((imax - imin) * Rnd()) + imin))
Return iResult
Catch ex As Exception
Return 0
End Try
End Function
__________________________________________________________________________
没有人能帮忙?谢谢了。Up一下~
__________________________________________________________________________
在沒有改不給種子數字時,每次新產生隨機數時都會一樣的。理解決方法有二
1)由主線程產生隨機數,并把此數傳遞給子線程。
2)同樣為主線程產生一個隨機數,這數作為子線程產生隨機數的種子數,再產生新的隨機數。
__________________________________________________________________________
每次 产生 随机数 前 使用
Randomize ()
问题解决
结帖
__________________________________________________________________________
Randomize() 没用的。每次还是都会一样的。
现在是多线程的问题...
****************************************************
chenxdb(菜鳥也瘋狂) 的方法有没有具体的例子??
现在如果我在产生随机数的时候.使用一个MsgBox(),弹出点信息,它产生的随机数就不会重复的。为什么?
__________________________________________________________________________
因为他使用时间作种子,多线程之行的时间差不多,所以种子一样,随机数也就一样
可以给每个线程一个不同的id,然后用id+时间作种子
__________________________________________________________________________
我用 Thread.CurrentThread.ManagedThreadId 和 DateTime.Now.Millisecond 一起作为种子,这次生成的不一样的,要庆祝一下。另外谢谢各位的讨论。
__________________________________________________________________________
主線程
Dim ran As New Random(Now.Millisecond)
For i As Integer = 0 To 100
System.Threading.ThreadPool.QueueUserWorkItem(New System.Threading.WaitCallback(AddressOf fun), ran.Next(0, 10000))
Next
子線程
Private Sub fun(ByVal i As Object)
i就為要傳遞的參數
End Sub
__________________________________________________________________________
说实话,不太懂,
Randomize () 多线程,单线程我用都 ok 啊
__________________________________________________________________________
多线程下的随机数问题
vb.net 多线程下的随机数,为什么每个线程产生的随机数一样啊,
哪位大哥有解决方法???
**************************************************
Private Function GetRndID(ByVal imin As Integer, ByVal imax As Integer) As Integer
Try
Dim iResult As Integer = 0
Randomize()
iResult = CInt(Int(((imax - imin) * Rnd()) + imin))
Return iResult
Catch ex As Exception
Return 0
End Try
End Function
__________________________________________________________________________
没有人能帮忙?谢谢了。Up一下~
__________________________________________________________________________
在沒有改不給種子數字時,每次新產生隨機數時都會一樣的。理解決方法有二
1)由主線程產生隨機數,并把此數傳遞給子線程。
2)同樣為主線程產生一個隨機數,這數作為子線程產生隨機數的種子數,再產生新的隨機數。
__________________________________________________________________________
每次 产生 随机数 前 使用
Randomize ()
问题解决
结帖
__________________________________________________________________________
Randomize() 没用的。每次还是都会一样的。
现在是多线程的问题...
****************************************************
chenxdb(菜鳥也瘋狂) 的方法有没有具体的例子??
现在如果我在产生随机数的时候.使用一个MsgBox(),弹出点信息,它产生的随机数就不会重复的。为什么?
__________________________________________________________________________
因为他使用时间作种子,多线程之行的时间差不多,所以种子一样,随机数也就一样
可以给每个线程一个不同的id,然后用id+时间作种子
__________________________________________________________________________
我用 Thread.CurrentThread.ManagedThreadId 和 DateTime.Now.Millisecond 一起作为种子,这次生成的不一样的,要庆祝一下。另外谢谢各位的讨论。
__________________________________________________________________________
主線程
Dim ran As New Random(Now.Millisecond)
For i As Integer = 0 To 100
System.Threading.ThreadPool.QueueUserWorkItem(New System.Threading.WaitCallback(AddressOf fun), ran.Next(0, 10000))
Next
子線程
Private Sub fun(ByVal i As Object)
i就為要傳遞的參數
End Sub
__________________________________________________________________________
说实话,不太懂,
Randomize () 多线程,单线程我用都 ok 啊
__________________________________________________________________________
- [VB.NET]多线程下的随机数问题
- [VB.NET]多线程的问题.
- [VB.NET]多线程操作的问题
- vb.net的多线程
- [VB.NET]如何设置随机数的种子
- VB.net 生成随机数的小代码
- [VB.NET]关于多线程和截图保存的问题!
- vb.net产生随机数
- vb.net 生成随机数
- [VB.NET]VB.net 读写ini的问题,希望好心人贡献下时间,帮忙解决下~~
- .net 多线程下HttpContext.Current 的问题
- vb.net 下的sql多表查询问题
- 多线程下的随机数初始化 srand()
- linux下的随机数问题
- vb.net生成随机数,并且统计生成的个数
- 基于VB.NET的多线程编程实现
- VB.Net的多线程及委托
- VB.Net的多线程及委托
- ubuntu下打开rar文件
- [VB.NET]如何来优化sqldatareader的读取速度
- [VB.NET]VB.NET中如何向网页提交一个请求,并得到返回的HTML代码?
- [VB.NET]有人用过API CreateFileMapping 内存共享 没有?能后给段例子?
- [VB.NET]如何固定DataGridView中的列(大家帮帮忙!)(急)
- [VB.NET]多线程下的随机数问题
- [VB.NET]求:VB8.0的TextBox内容实现Update到数据库写法
- [VB.NET]请问连接access的代码怎么写?
- [VB.NET].net2005中Splitter问题求助
- [VB.NET]高難度哦,關於checkbox在前端生成後的查找問題,謝謝大家關注
- [VB.NET]在线急等问题解决方法!~~~
- [VB.NET]可不可以把个DataGridview的值赋给一个DataTable?
- 昔日号称谷歌杀手今朝市场份额跌至谷底
- Jack Dangermond:GIS不是Google Maps