小编Tho*_*mas的帖子

Random.Next始终返回相同的值

这真的很奇怪,我不明白为什么会这样.在foreach循环中,我正在迭代A类集合,并且对于每个类,我调用Count()方法,其中r1r2数字是从范围[-1,1]生成的.问题是 Random.Next为每个实例返回相同的"随机"数字.当第一个实例的结果为0和-1时,将从以下实例返回相同的结果.拜托,你能告诉我为什么会这样吗?另外,我在每个A类实例中都得不到不同的结果.这是代码:

class a
{
 Random rnd = new Random();
 private void Count()
 {
  int r1 = rnd.Next(-1, 1);
  int r2 = rnd.Next(-1, 1);
 }
}
class b
{
 List<a> listofA=new list<a>();
 foreach (a ACLASS in listofA)
 {
  ACLASS.Count();
 }
}
Run Code Online (Sandbox Code Playgroud)

c# random math

60
推荐指数
4
解决办法
6万
查看次数

MySQL - 选择最后插入行最简单的方法

我只需要选择条件指定的最后输入的行,例如:

SELECT ID from bugs WHERE user=Me
Run Code Online (Sandbox Code Playgroud)

我只需要返回用户'我'输入的最后一个ID.有一个简单的方法吗?谢谢.

mysql select

26
推荐指数
6
解决办法
16万
查看次数

在short,int,long之间区分真的很重要吗?

在我的C#应用​​程序中,我想知道对于较小的数字使用short是否非常重要,对于较大的数字使用int是否真的很重要.内存消耗真的很重要吗?

c# types

15
推荐指数
2
解决办法
1701
查看次数

值类型继承自System.Object ...为什么?

可能重复:
.NET中的所有内容都是对象吗?
ValueTypes如何从Object(ReferenceType)派生而仍然是ValueTypes?

嗨,我只是不明白.System.Object是(我认为)引用类型,但.NET中的所有数据类型都继承自它.值类型也是如此.我不明白它 - 值类型在堆栈上有它的值,但它继承自Object?希望有人能帮助我理解

c# types object

14
推荐指数
2
解决办法
8959
查看次数

可以在不创建派生类的情况下将数据传递给EventArgs吗?

我有点困惑.我知道我可以创建派生自EventArgs的类,以便拥有自定义事件数据.但我可以以某种方式使用基类EventArgs吗?与鼠标按钮一样,在订阅者方法中,始终存在"EventArgs e"参数.我能以某种方式创建以这种方式传递数据的方法,我的意思是它们将在基础Eventargs中传递吗?

c# events

12
推荐指数
3
解决办法
3万
查看次数

用ReaderWriterLockSLim替换ReaderWriterLock - 麻烦

由于性能问题,我已经更换ReaderWriterLockReaderWriterLockSlim.我遇到了麻烦,这是由使用RWL时正常运行的代码引起的.

如您所见,有时MethodA(获取锁定)会调用另一个方法(获取锁定).第二种方法也是从不同的地方调用的,因此并不总是存在锁定冲突.以前,AcquiringRead锁定不会导致该问题.

除了放置"if IsRWheld"之外,还有其他解决方案吗?

问题是这样的:

class Avacado
{
   ReaderWriterLockSlim _lock = new ReaderWriterLockSlim();

   void MethodA()
   {
      _lock.TryEnterWriteLock(-1);
         LockedList.Add(someItem)
         var result = MethodX();
      _lock.ExitWriteLock();
   }

   object MethodX()
   {
      //if called from MethodA, it will throw an exception
      _lock.TryEnterReadLock(-1);

      //...some stuff with LockedList...
      var result = LockList.Something();

      _lock.ExitReadLock();

      return result;
   }
}
Run Code Online (Sandbox Code Playgroud)

c# multithreading locking

7
推荐指数
2
解决办法
4220
查看次数

究竟是什么意思锁定一个对象?

尽管我在我的应用程序中使用锁定,但我不明白锁定特定引用类型的确切原因.我认为它只是停止线程,直到{}的内容完成.但我已经读过锁定(这个)很糟糕,如果是公开的 - 为什么?文章解释了它,但我不明白我不知道对象本身被锁定的情况.例如,如果我使用lock(this)并从另一个线程调用其方法怎么办?我以为只有锁下的代码受到保护,否则我将无法访问被锁定的对象?谢谢

c# multithreading locking

6
推荐指数
2
解决办法
1539
查看次数

c#RTB - 粘贴没有颜色/字体的纯文本?

我在C#应用程序中使用Rich Text对象.我遇到的唯一问题是,当用户从另一个应用程序粘贴格式化文本时,它仍然是我不能拥有的格式.有没有办法如何只粘贴字符串并忽略格式?谢谢!

c# richtextbox winforms

6
推荐指数
3
解决办法
1万
查看次数

C#SqlCommand - 不能使用参数作为列名,如何解决?

有什么方法可以做到吗?这不起作用:

SqlCommand command = new SqlCommand("SELECT @slot FROM Users WHERE name=@name; ");
prikaz.Parameters.AddWithValue("name", name);
prikaz.Parameters.AddWithValue("slot", slot);
Run Code Online (Sandbox Code Playgroud)

我唯一能想到的是使用SP并声明并设置列的变量.对我来说有点尴尬.

c# sql sql-server-2005

6
推荐指数
2
解决办法
8071
查看次数

C# WinForms - Paint method questions

I am not sure what is the best way of using graphics - should I attach my classes to main form Paint event and then do the drawing, or it is better to call it from overidden OnPaint void like this? I mean, is it OK to do that like this:

protected override void OnPaint(PaintEventArgs e)
{
    base.OnPaint(e)  //what is this good for? My app works without it as well
    Graphics g=e.Graphics;
    DrawEnemies(g);
    UpdateHUD(g);
    DrawSelectedUnit(g);
}
Run Code Online (Sandbox Code Playgroud)

c# onpaint winforms

5
推荐指数
2
解决办法
5896
查看次数