问题列表 - 第43984页

消息队列思考

我们使用C#实现了一个消息队列Queue.我们知道我们只有一个消费者从队列中取出可用消息以进行while循环处理.我们也知道只有一个生产者将消息放入队列.

我们有一个lock上面的消息队列,以确保消费者和生产者不能同时访问队列.

我的问题是lock必要的吗?如果在实际添加项目之后Queue增加其Count属性,并且如果消费者在检索之前检查,则消费者应该获得完整的消息项,即使我们没有.对?因此,我们不会面临部分邮件项目问题.那我们可以摆脱那个?Countlocklock

lock将减慢系统速度,偶尔我们可以看到检索线程被阻塞一段时间,因为我们有一个非常重的生产者.

编辑:

不幸的是我们正在使用.Net 3.5.

.net c# queue .net-3.5

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

C#XPath帮助 - 表达式不起作用

这是一个示例XML文档,它匹配我从以下信息获取的信息:

<?xml version="1.0" standalone="yes"?>
<Products xmlns="http://tempuri.org/Products.xsd">
  <Movies>
    <Title>Title1</Title>
    <Language>English</Language>
  </Movies>
  <Movies>
    <Title>Title2</Title>
    <Language>English</Language>
  </Movies>
  <Movies>
    <Title>Title3</Title>
    <Language>French</Language>
  </Movies>
  <Books>
    <Title>BTitle1</Title>
    <Genre>Suspense</Genre>
  </Books>
  <Books>
    <Title>BTitle2</Title>
    <Genre>Suspense</Genre>
  </Books>
  <Books>
    <Title>BTitle3</Title>
    <Genre>SciFi</Genre>
  </Books>
  <Books>
    <Title>BTitle4</Title>
    <Genre>SciFi</Genre>
  </Books>
</Products>
Run Code Online (Sandbox Code Playgroud)

这是我的代码,以获得所有具有悬念类型的书籍:

//Get state list using XPath
XPathDocument xDoc = new XPathDocument(xmlPath); //Path to my file
XPathNavigator xNav = xDoc.CreateNavigator();
string booksQuery = "Books[Genre = \"Suspense\"]";
XPathNodeIterator xIter = xNav.Select(booksQuery);

while (xIter.MoveNext())
{
    //do stuff with xIter.Current
}
Run Code Online (Sandbox Code Playgroud)

我尝试了好几种查询包括Products/Books[Genre = \"Suspense\"],Products/Books,./Books …

c# xml xpath

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

Subversion不会更新到旧版本

我正在尝试更新到旧版本,但我得到:

$ svn update -r126
svn: Target path does not exist
Run Code Online (Sandbox Code Playgroud)

一个简单的更新工作正常.此外,更新到修订版126适用于其他计算机,而不是我的.

知道这里有什么不对吗?

svn

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

以不同方式处理asp.net转发器的最后一次迭代

是否有可能在转发器的最后一次迭代中检测或使用asp.net转发器中的不同模板?

如果不是,我可以只使用for循环,但我很好奇是否可以完成.

asp.net

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

Git - 没有Github的分叉

"forking"的功能是否特定于github?或者是否有一个纯粹的git进程来创建可以从父级获取更新的"复制"子级存储库?如果是这样,怎么样?

编辑:我必须git clone对当时的情况感到困惑.这是我的理解,git clone就是我在我的机器上做的事情,以获取存储库的本地副本以进行更改commit,以及push从中进行更改.我们目前正在用gitosis主办我们的回购.所以,如果我想要一个'fork',我会在gitosis服务器本身(在原点)克隆存储库?这会创建一个新的git地址吗?

git fork dvcs github git-fork

7
推荐指数
4
解决办法
5942
查看次数

Microsoft Word VBA脚本接受所有删除?

我在Word 2010中进行了大量修订(多个作者更改了跟踪).我想创建一种方法来接受文档中的所有删除而不接受插入.我做了一些研究,发现了一个VBA脚本示例声称这样做,但它只是给了我一个错误消息.这是几个星期前,我找不到脚本或记住错误消息.

有人知道怎么做吗?提前致谢.

解:

找到我正在使用的代码,由于某种原因它现在正在运行.

Sub AcceptDeletion()
Dim oChange As Revision
For Each oChange In ActiveDocument.Revisions
  With oChange
   If .Type = wdRevisionDelete Then
     .Accept
   End If
  End With
Next oChange
End Sub
Run Code Online (Sandbox Code Playgroud)

vba ms-word

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

Rails Number to Indian货币格式转换助手

我的号码像100000

当我用户number_to_currency(100000)

它给 - 100,000.00

但我怎么能得到像1,00,000.00这样的格式

因为100,000美元看起来不错,但要用Rs显示它我需要像这样的分隔符(',') - 1,00,00,000.00

ruby-on-rails view

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

使用带有null ResultSet的JDBC的临时表

我正在使用MS SQL驱动程序3.0版通过标准JDBC连接执行存储过程.

我发现当我创建数据并将数据插入临时表时,存储过程无法正常执行.

Java代码不会抛出异常,但javax.sql.ResultSet会是null.

存储过程中的失败点是我取消注释的时候 INSERT INTO #TBL CLM_NAME VALUES('VAL')

当我使用SQL Studio Manager执行语句时,它可以毫无困难地执行,并且数据按预期执行.

有没有人遇到这个或知道为什么会这样?

最初我认为它是因为SQL驱动程序,我仍然认为它是?

谢谢.

java sql-server-2005 jdbc temp-tables

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

如何使用jQuery递归地解析子节点

我正在使用我的jQuery代码(工作正常):

$('[RptrRowEnableAutoHeight=""True""]').each(function () {
        var ch = 10;
        $(this).children().each(function(){ch += $(this).height();}); 
        $(this).height(ch);
});
Run Code Online (Sandbox Code Playgroud)

以上内容仅适用于根元素的直接子元素.如何为所有嵌套的子元素实现相同的功能.

这是我们的一个特例,因为布局是使用绝对定位(几乎无处不在)开发的.此时,我们无法使用流布局修改整个布局.

简单来说,我想让所有(容器)控件自动展开(它们的高度/宽度)以适当的方式包含它们的子元素(没有任何滚动条/隐藏).

谢谢

jquery

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

在安全页面上查找所有不安全的内容

查找HTTPS页面请求的所有非HTTPS URL列表的最有效方法是什么?如果发生此类安全违规,每个浏览器都会提醒用户,但我找不到一种简单的方法来查找确切的URL导致违规.

到目前为止我发现的最简单的方法是使用Firefox,但即便如此,它仍然不是很方便.首先,我可以右键单击,选择"查看页面信息",单击"媒体"选项卡,然后滚动URL列表.但是,这似乎只列出图像文件,而不是CSS或JS包含,也可能导致错误.对于那些,我必须使用Firebug扩展,选择Net选项卡,并手动将鼠标悬停在每个项目上以查看整个URL.不幸的是,如果你有几十个媒体文件,这可能需要一段时间.有没有更好的办法?

browser security browser-security

63
推荐指数
6
解决办法
7万
查看次数