小编Bjö*_*ist的帖子

Visual Studio中Web应用程序的控制台输出

如何在Visual Studio中调试用C#编写的Web应用程序?我正在使用Console.WriteLine,期望文本出现在"输出"选项卡中.就像开发控制台应用程序时一样.但对于Web应用程序,控制台输出不会出现在任何地方.

c# debugging console visual-studio

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

用于并行下载多个文件的库或工具

我正在寻找一个python库或命令行工具,用于并行下载多个文件.我目前的解决方案是按顺序下载文件,这很慢.我知道你可以很容易地在python中编写一个半成熟的线程解决方案,但是在使用线程时我总是遇到烦人的问题.它用于从网站轮询大量xml提要.

我对解决方案的要求是:

  1. 应该是可以打断的.Ctrl + C应立即终止所有下载.
  2. 即使主程序崩溃或抛出异常,也不应该使用kill手动杀死剩余的进程.
  3. 它也适用于Linux和Windows.
  4. 它应该重试下载,对网络错误具有弹性并且应该正常超时.
  5. 应该明智的做法是不要同时下载100多个同一台服务器,但要以理智的方式对它们进行排队.
  6. 它应该处理重要的http状态代码,如301,302和304.这意味着对于每个文件,它应该将Last-Modified值作为输入,并且只有在自上次更改后才下载.
  7. 优选地,它应该具有进度条,或者应该容易为其编写进度条以监视所有文件的下载进度.
  8. 优选地,它应该利用http keep-alive来最大化传输速度.

不要建议我如何实施上述要求.我正在寻找一个现成的,经过实战考验的解决方案.

我想我应该描述我想要的东西......我有大约300种不同的数据源,因为xml格式的文件来自50个数据提供者.每个文件的大小在100kb到5mb之间.我需要经常轮询它们(如每隔几分钟一次)以确定它们是否有我需要处理的新数据.因此,下载程序使用http缓存来最小化要获取的数据量非常重要.它显然也使用gzip压缩.

那么最大的问题是如何在不超越任何边界的情况下以尽可能高效的方式使用带宽.例如,如果您打开20个同时连接到其数据源的连接,则一个数据提供商可能会认为它被滥用.相反,最好使用一个或两个重用于多个文件的连接.或者您自己的连接可能会以奇怪的方式受到限制.我的isp限制了您可以执行的dns查找次数,因此某种dns缓存会很好.

python parallel-processing http download feed

20
推荐指数
2
解决办法
6125
查看次数

检查正在运行的进程正在做什么:打印未经检测的Python程序的堆栈跟踪

有没有办法在Linux上检查正在运行的Python守护进程正在做什么?也就是说,没有检测代码而没有终止它?我希望得到模块的名称和当前正在运行的行号.

常规调试工具(如strace,pstack和gdb)对Python代码不是很有用.大多数堆栈帧只包含来自解释器代码的函数,如PyEval_EvalFrameEx和PyEval_EvalCodeEx,它不会在执行的.py文件中提供任何提示.

python debugging daemon process stack-trace

20
推荐指数
2
解决办法
5970
查看次数

优化的memcpy

在C++中有没有更快的memcpy()替代品?

c++ optimization memcpy

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

Haskell中有一些目录漫游器吗?

在Haskell中是否有一些递归目录walker所以我可以编写类似的东西

listing <- walkDir "/tmp"
Run Code Online (Sandbox Code Playgroud)

我不想写我自己的.我可以从cabal安装一些依赖,但我希望它是跨平台的(至少Linux和Windows).

io haskell directory-traversal

17
推荐指数
3
解决办法
2816
查看次数

Google使用什么协议用于Gmail?(不是IMAP或POP)

您可以使用网络界面,Google的Android客户端或使用IMAP访问Gmail.据我所知,网络界面和Android应用程序使用的协议与IMAP完全不同 - 它们不仅仅是接口.我之所以确定这一点,是因为Android应用程序可以毫无问题地在<3秒内打开1m邮件的文件夹.没有普通的IMAP客户端可以做到这一点.

所以我的问题是这个秘密协议的知识是什么?它的参考文档在哪里?是否进行了逆向工程?谷歌是否批准其使用?

arnt的答案提供了一种测试gmail原始imap速度的绝佳方法:

$ openssl s_client -host imap.gmail.com -port 993 -crlf 
...
* OK Gimap ready for requests from 12.34.56.78
$ a LOGIN ***@*** ***
a OK
$ c SELECT "[Gmail]/All mail" !!!!
* FLAGS (\Answered \Flagged \Draft \Deleted \Seen)
* OK [PERMANENTFLAGS (\Answered \Flagged \Draft \Deleted \Seen \*)] Flags permitted.
* OK [UIDVALIDITY 673376278] UIDs valid.
* 1142417 EXISTS
* 0 RECENT
* OK [UIDNEXT 1159771] Predicted next UID.
* OK [HIGHESTMODSEQ 8670601]
c OK [READ-WRITE] [Gmail]/All …
Run Code Online (Sandbox Code Playgroud)

gmail imap protocols gmail-imap

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

有效地找到大图中的最短路径

我正在寻找一种方法来实时找到巨大图形中节点之间的最短路径.它有数十万个顶点和数百万个边.我知道之前已经问过这个问题,我想答案是使用广度优先搜索,但我更感兴趣的是知道可以用什么软件来实现它.例如,如果已经存在用于在无向图中执行bfs的库(使用python绑定!),那将是完全完美的.

python graph dijkstra breadth-first-search shortest-path

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

Visual Studio 2013 msvcr120到msvcr100

是否可以将restrib文件更改为msvcr100,以便其他计算机可以运行该程序而不会出现.dll文件问题?如果是这样我怎么做到的?

我编译程序,其他人因为缺少msvcr120.dll文件而无法使用它.所以如果我能以某种方式改变它会很棒.

是否可以在没有较旧的Visualstudio版本的情况下安装Plattformtoolset?

c++ dll visual-studio-2013 msvcr100.dll

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

仅对单个按钮进行现场验证

我在模式对话框内的文本框上有以下验证器.

<asp:RequiredFieldValidator runat = "server" 
                            ErrorMessage = "Role name can not be empty."
                            ControlToValidate = "tbxRoleName" />
Run Code Online (Sandbox Code Playgroud)

它的工作原理应该是这样,除了验证触发aspx页面上的每个其他按钮OnClick处理程序.由于对话框不可见,看起来按钮只是在页面上不起作用.我的解决方法是在页面上的所有按钮上添加CausesValidation ="false".但这是一个非常糟糕的解决方案,我认为应该有一个更聪明的方法.

asp.net validation requiredfieldvalidator

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

从数据库加载django模板

我试图从djangos正常请求 - 响应结构之外的数据库渲染django模板.但由于django模板的编译方式,它似乎并不重要.我想做这样的事情:

>>> s = Template.objects.get(pk = 123).content
>>> some_method_to_render(s, {'a' : 123, 'b' : 456})
>>> ... the rendered output here ...
Run Code Online (Sandbox Code Playgroud)

你怎么做到这一点?

django django-templates django-models

12
推荐指数
2
解决办法
8240
查看次数