问题列表 - 第8835页

在Linux中记录内存占用

有没有办法记录内存占用?在某个过程完成后,我们仍然可以访问它.

我检查内存占用的典型方法是:

$ cat /proc/PID/status
Run Code Online (Sandbox Code Playgroud)

但是在这个过程结束后,它绝不存在.

unix linux memory-footprint

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

如何仅将文本框输入过滤为数字?

如何禁止除数字以外的所有数据?

这不起作用KeyDown():

If e.KeyData < Keys.D0 Or e.KeyData > Keys.D9 Then
    e.Handled = True
End If
Run Code Online (Sandbox Code Playgroud)

vb.net

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

你知道的最快的Dijkstra实现是什么(在C++中)?

我最近做了第三版Dijkstra算法,将单一来源的最短路径附加到我的项目中.

我意识到有许多不同的实现在性能上有很大差异,并且在大图中的结果质量也有所不同.使用我的数据集(> 100.000个顶点),运行时间从20分钟到几秒不等.最短路径也变化1-2%.

你知道哪个是最好的实现?

编辑: 我的数据是一个液压网络,每个节点有1到5个顶点.它可以与街道地图相媲美.我对已经加速的算法做了一些修改(使用所有剩余节点的排序列表),现在在一小部分时间内找到相同的结果.我已经搜索了这样的事情了很长一段时间.我想知道这样的实现是否已经存在.

我无法解释结果的细微差别.我知道Dijkstra不是启发式的,但所有的实现似乎都是正确的.更快的解决方案具有更短路径的结果.我只使用双精度数学.

编辑2: 我发现找到的路径的差异确实是我的错.我已经为某些顶点插入了特殊处理(仅在一个方向上有效),并在其他实现中忘记了这一点.

但是我仍然惊讶于Dijkstra可以通过以下变化大幅加速:一般来说Dijkstra算法包含一个循环,如:

MyListType toDoList; // List sorted by smallest distance 
InsertAllNodes(toDoList);
while(! toDoList.empty())
{
    MyNodeType *node = *toDoList.first();
    toDoList.erase(toDoList.first());
    ...
}
Run Code Online (Sandbox Code Playgroud)

如果你稍微改变一下,它的工作方式相同,但表现更好:

MyListType toDoList; // List sorted by smallest distance 
toDoList.insert(startNode);
while(! toDoList.empty())
{
    MyNodeType *node = *toDoList.first();
    toDoList.erase(toDoList.first());
    for(MyNeigborType *x = node.Neigbors; x != NULL; x++)
    {
        ...
        toDoList.insert(x->Node);
    }
}
Run Code Online (Sandbox Code Playgroud)

看起来,这种修改通过不是数量级的顺序来减少运行时间,而是指数的顺序.它将我的运行时形式从30秒减少到小于2.我在任何文献中都找不到这种修改.同样非常清楚的是,原因在于排序列表.插入/擦除在100.000元素的情况下执行得更糟糕.

回答:

经过大量的谷歌搜索后,我发现了自己.答案很清楚: boost graph lib.太棒了 - 我有一段时间没有找到这个.如果您认为Dijkstra实现之间没有性能差异,请参阅维基百科.

c++ algorithm performance

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

如何将MSpec与MS Build集成?

前几天我看了一个BDD截屏通过罗布科纳.在视频中他展示了如何使用MSpec,所以我下载了它并使用了比特.我现在想要的是将MSpec与MS Build 集成,但我不知道如何...我使用TFS团队构建作为我的CI服务器 - 你能帮助我将MSpec与MSBuild 集成吗?

谢谢!

.net msbuild bdd continuous-integration mspec

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

使用TSQL,我可以将CHAR(1)列递增1并在没有CASE语句的LEFT OUTER JOIN中使用它吗?

这个问题类似于我的上一个问题.除了这次我使用的是字母而不是6位整数.我想找到不按顺序的"字母".

假设我有以下数据:

id | Date | Letter
-----------------------------
01 | 5/1/2009 | X
02 | 5/1/2009 | Y
03 | 5/1/2009 | Z
04 | 5/1/2009 | A
05 | 5/1/2009 | B
06 | 5/1/2009 | D
Run Code Online (Sandbox Code Playgroud)

我希望能够提出一个查询,告诉我在05和06行之间应该有一行"C".

在我的上一个问题(使用INT)中,我获得了类似于以下解决方案的东西,并且它工作得很好.

SELECT * from TABLE1 t1 
LEFT OUTER JOIN TABLE2 t2 ON t2.INTCol - 1 = t2.INTCol AND t1.date = t2.date
WHERE t2.id IS NULL
Run Code Online (Sandbox Code Playgroud)

好吧,有信(据我所知)我不能说(G - 1).那么,还有另一种方法吗?

我使用的数据库是SQL Server 2005.我相信在使用TRANSLATE的PL/SQL中有一个简单的解决方案,但我不能做任何事情,比如使用TSQL.

sql t-sql database sql-server algorithm

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

将ASP.NET请求用户用于Log4net日志条目

我的ASP.NET站点正在使用集成身份验证,并且模拟已关闭.我在web.config中的"conversionPattern"中添加了"%username",以便为每个日志记录条目添加用户名.但是,这将使用应用程序池标识的用户名,而不是当前访问用户的名称.

关于如何最好地做到这一点的任何想法?我必须写一个自定义的appender吗?我不介意任何轻微的性能损失,因为这是一个小型内部网站点.谢谢!

asp.net log4net

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

asp.net列表框问题

foreach(o.list中的书b){ListBox_Items.Items.Add(b.Title); }

执行此操作后,标题现在显示在列表框中.

当我进行选择(单一模式)时,ListBox_Items(屏幕)突出显示所选行,但事件SelectedIndexChanged未触发.

protected void ListBox_Items_SelectedIndexChanged(object sender, EventArgs e)
{
  int i = ListBox_Items.SelectedIndex;
}

ID="ListBox_Items" runat="server" EnableViewState="False" Width="400px" Rows="25" onselectedindexchanged="ListBox_Items_SelectedIndexChanged"
Run Code Online (Sandbox Code Playgroud)

有任何想法吗 ?

迈克尔

编辑1:感谢大家的帮助.现在就开始工作了.无论如何,我也必须将EnableViewState打开为True.因为我有一个"删除"按钮来从列表框控件中删除项目,如果EnableViewState为False,每当我单击"删除"按钮时,列表框将再次变为空.

asp.net listbox selectedindexchanged

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

键盘焦点被Flash窃取

执行搜索时,我注意到了几个专门用于窃取/捕获访问者键盘焦点的问题.考虑到这个网站致力于编程并不令人惊讶.我想知道是否有人可以告诉我如何防止这种行为.丢失键盘焦点到闪存基本上会删除我的浏览器的功能,直到我使用鼠标点击其他地方(我使用Mozilla Firefox).有人知道某些插件或者关键字脚本会阻止我的键盘焦点被盗吗?通过必须使用鼠标将键盘焦点返回到浏览器,普通浏览器"快捷方式"变得无用.

编辑:回复下面的帖子,我确实有flashblock/noscript和其他一些东西.我的问题是闪光,我想看到/互动窃取我的焦点.基本上寻找的东西,我可以切换,以防止闪存获得键盘焦点或强制我的firefox键盘命令到浏览器

keyboard flash focus

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

C#:如何查看Linq2SQL实体是否在数据库中

我想检查一个实体是否已添加到数据库中.那么,我怎么能看到a和之间的这种差异b

var a = dataContext.Things.First(x => x.Name == something);
var b = new Thing { Name = something };
Run Code Online (Sandbox Code Playgroud)

为了更清楚,如果我有这个:

var thing = dataContext.Things.FirstOrDefault(x => x.Name == something) 
            ?? new Thing { Name = something };
Run Code Online (Sandbox Code Playgroud)

如何查看是否thing需要插入?

c# datacontext linq-to-sql

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

EIO 错误代码是什么意思?

我正在维护用户可以在其上部署 Web 应用程序的 Web 服务器软件。Web 应用程序作为单独的进程运行:Web 服务器启动 Web 应用程序进程,将 HTTP 请求转发到 Web 应用程序,并将 Web 应用程序的响应转发回 HTTP 客户端。Web 服务器和 Web 应用程序之间的通信通过套接字进行。

一些用户(= Web 应用程序开发人员)报告说,当他们写入将 Web 应用程序连接到 Web 服务器的套接字时,他们偶尔会遇到神秘的 EIO 错误(至少,他们认为是写入套接字导致了错误)。其他一些人报告说,他们在向 STDERR(重定向到日志文件)写入内容时也会遇到此错误。重新启动 Web 服务器和 Web 应用程序可以在短时间内“修复”此问题。

EIO 是什么意思? 我知道手册上写着“输入/输出错误”,但这个描述非常模糊。什么情况下会发生?它与 ECONNREFUSED/EPIPE/ENOTCONN/etc 有何不同?

sockets

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