问题列表 - 第12818页

读取一个没有锁定同时修改的整数变量是否安全?

假设我在类中有一个整数变量,并且该变量可能被其他线程同时修改.写入受互斥锁保护.我是否也需要保护读取?我听说有一些硬件架构,如果一个线程修改一个变量,另一个线程读取它,那么读取结果将是垃圾; 在这种情况下,我确实需要保护读取.我从未见过这样的架构.

这个问题假设单个事务只包含更新单个整数变量,因此我不担心可能也涉及事务的任何其他变量的状态.

c++ concurrency multithreading

46
推荐指数
4
解决办法
2万
查看次数

扩展Microsoft.VisualStudio.TestTools.DataSource.XML

我正在使用C#VS2008中的Xml数据源编写数据驱动的单元测试.

属性看起来像这样,一切都很棒.

    [DeploymentItem("HtmlSchemaUrls.xml")]
    [DataSource("DataSource", "Microsoft.VisualStudio.TestTools.DataSource.XML", "|DataDirectory|\\HtmlSchemaUrls.xml", Microsoft.VisualStudio.TestTools.WebTesting.DataBindingAccessMethod.Sequential, "URL")]
    [DataBinding("DataSource", "URL", "URL_Text", "DataSource.URL.URL_Text")]
    [TestMethod]
Run Code Online (Sandbox Code Playgroud)

我想扩展Microsoft.VisualStudio.TestTools.DataSource.XML数据源的功能,最好通过App.config进行配置.例如,一个bool,当我运行Xml文件中的所有行时为true,而当为false时,我只运行一个.

我不想在测试用例本身中执行此检查 - 我有1000个具有此要求的测试用例.

任何有关如何实现这一目标的指导都将非常受欢迎.

c# xml datasource data-driven-tests

5
推荐指数
1
解决办法
2679
查看次数

验证jabber id的正则表达式是什么?

现在我正在使用这个正则表达式:

^\A([a-z0-9\.\-_\+]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\Z$
Run Code Online (Sandbox Code Playgroud)

我认为这不是很好.那么你在验证jids时所拥有或已经看过的最佳正则表达式是什么?

作为参考,XMPP核心标准的第3节将Augmented Backus-Naur形式的JID定义为

jid             = [ node "@" ] domain [ "/" resource ]
domain          = fqdn / address-literal
fqdn            = (sub-domain 1*("." sub-domain))
sub-domain      = (internationalized domain label)
address-literal = IPv4address / IPv6address
Run Code Online (Sandbox Code Playgroud)

regex validation xmpp

4
推荐指数
2
解决办法
2654
查看次数

宏的问题

嗨,

有人可以帮助我理解为什么SQUARE(x)的值是49?

我使用的是Visual C++ 6.0.

#define SQUARE(X) X * X

int main(int argc, char* argv[])
{
    int y = 5;

    printf("%d\n",SQUARE(++y));
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ macros visual-c++-6

5
推荐指数
4
解决办法
4315
查看次数

WinForm UI组件层顺序

当我们在WinForms中添加任何UI或容器时,后面添加的组件来自早期添加的组件,我们可以说它位于更高层.

如何在添加组件后更改图层顺序或组件顺序?

c# components layer winforms

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

在String.Format()中转义单引号

我一直都在'管子里,我无法想出这个.可能很简单.

以下String.Format电话:

return dt.ToString("MMM d yy 'at' H:mmm");
Run Code Online (Sandbox Code Playgroud)

正确地返回这个:

2008年9月23日12:57

现在让我们说我想在年之前添加一个单引号,以返回:

08年9月23日12:57

由于单引号是保留的转义字符,如何转义单引号以使其显示?

我试过双,三和四单引号,没有运气.

.net string.format escaping

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

重命名Core Data类

我有一个使用CoreData的应用程序.

我之前有一个名为Marker的类,它与Core Data中的Marker实体相关联.

我将Marker类重命名为CoreDataMarker.所以我创建了一个新的.xcdatamodel文件,其中包含该实体的新类名.然后我创建了一个.xcmappingmodel并选择了旧的和新的.xcdatamodel文件,似乎'自动设置'很好.

然而,当我运行我的应用程序时,它抱怨:"无法将模型与名为'Marker'的两个不同实体合并".我知道这种情况会发生,但我不知道如何解决它.

你知不知道怎么?

提前致谢!

core-data

1
推荐指数
1
解决办法
2433
查看次数

C# - 一个列表中的多个泛型类型II

能否请你澄清这里提出的问题.

为什么最初定义的类很重要:

public class Metadata<DataType> where DataType : struct 
{ 
   private DataType mDataType; 
}
Run Code Online (Sandbox Code Playgroud)
  1. 被替换为从相同接口或抽象类派生的可能是因为IList <>成员必须共享一些常见的对象类型?
  2. 必须使该公共类型与IList <>类型具有相同的名称,例如.IList - >派生自T,或IList - >派生自InterfaceT,IT?

感谢和问候,米兰.

.net c# generics types

4
推荐指数
1
解决办法
2310
查看次数

我应该在Rails 2.3.3中使用什么版本的Ruby?

我可以将Rails 2.3.3与Ruby的最新版本(1.9.1)一起使用吗?在这个页面上,他们推荐Ruby 1.8.7.

ruby ruby-on-rails

1
推荐指数
1
解决办法
370
查看次数

如何在Blackberry Storm中处理ButtonField和BitmapField点击(触摸)事件?

我创建了一个ButtonField和一个BitmapField,比如..

  public class MyCanvas extends MainScreen implements FieldChangeListener
  {
    HorizontalFieldManager hfm;
    private Bitmap startBitmap;
    private BitmapField startBitmapField;
    private ButtonField okButton;

   MyCanvas()
   {
     hfm = new HorizontalFIeldManager();
     startBitmap = Bitmap.getBitmapResource("start.png"); 
     startBitmapField = new BitmapField(startBitmap);
     startBitmapField.setChangeListener(this); 
     hfm.add(startBitmapField);

     okButton = new ButtonField("Ok", ButtonField.CONSUME_CLICK | ButtonField.NEVER_DIRTY); 
     okButton.setChangeListener(this);
     hfm.add(okButton);
   }

   public void fieldChanged(Field field, int context)
   {
    if(field == startBitmapField)
    {
        System.out.println("Touched START...");
    }
    else if(field == okButton)
    {
        System.out.println("Touched Ok...");
    }
   }
}
Run Code Online (Sandbox Code Playgroud)

但ButtonField或BitmapField点击不会发生在Blackberry 4.7模拟器中.

我想为Blackberry Storm构建它,所以我使用的是Blackberry 4.7

如何为Blackberry Storm处理ButtonField和BitmapField的点击/触摸事件?


我正在创建ButtonField和BitmapFields

okButtonField = new …
Run Code Online (Sandbox Code Playgroud)

user-interface blackberry touchscreen blackberry-storm rim-4.7

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