小编gra*_*eds的帖子

免费网络监视器

我在整合两种产品时遇到了麻烦,其中一种产品是我的,它们似乎没有说话.所以我想确保他们正确沟通.我浏览了一下网络监视器,发现了TCP Spy.这有效,但一次只显示对话的一面(它必须在本地运行)我理想情况下想要同时看到双方 - 但你不能运行两个TCP Spy副本.

我找到了Sourceforge,但似乎什么也没出现 - 我是Windows开发人员,我没有安装perl.

我发现其他几个都是瘫痪的,完全没用,所以我想知道那些SO用来观看TCP对话的内容是什么?

BTW - 'not-written-here'产品不是浏览器.

sockets windows network-monitoring

8
推荐指数
2
解决办法
1290
查看次数

在Java Web应用程序中运行常规后台事件

在播客#15中,杰夫提到他如何在后台运行常规活动,好像这是一个正常的功能 - 不幸的是我似乎无法通过推特找到它.现在我需要做类似的事情,并将问题提交给群众.

我目前的计划是当第一个用户(可能是我)进入网站时,它会启动一个后台线程,等待分配时间(每小时一小时),然后启动阻止其他人的事件(我是一名Windows程序员,所以我认为在事件和WaitOnMultipleObjects方面,直到它完成.

杰夫是如何在Asp.Net中做到这一点的,他的方法是否适用于Java web-app世界?

java events

8
推荐指数
2
解决办法
3246
查看次数

使用每个base64字符的句子

我正在尝试构造一个句子/字母组合,它将返回每个base64字符,但未能找到单词测试的单词.

到目前为止,我所进行的单元测试未能触及处理+和/字符的行.虽然我可以直接在编码器/解码器上放置它们,但是有一个人类可读的源(相当于'快速的棕色狗'的base64)会很好.

base64

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

为什么没有任何开源替代大型商业游戏呢?

我在考虑所有类型的游戏类别.我的经验是,没有任何开源游戏真正挑战商业游戏,考虑游戏价值,图形,声音等.

open-source

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

如何让模板推断出其参数

我正在尝试编写一个接收器back_inserter来减少std::copy()扩散代码的命令数量.

#include <algorithm>
#include <iostream>
#include <iterator>
#include <string>
#include <vector>

template <typename OutputIterator>
class sink
{
public:
    sink(OutputIterator out) : _out(out) { }
    OutputIterator _out;
};

template <typename OI, typename C>
sink<OI>& operator<<(sink<OI>& s, const C& c)
{
    std::copy(c.begin(), c.end(), s._out);
    return s;
}


int main(int, const char*[])
{
    std::vector<uint8_t> c;
//    auto s = sink<std::back_insert_iterator<std::vector<uint8_t>>>(std::back_inserter(c));
    auto s = sink(std::back_inserter(c));

    s << std::vector<uint8_t>{'F','e','e','d','i','n','g',' ','f','r','o','g','g','i','e','s'};
    s << std::string("Hungry hippos");

    std::copy(c.begin(), c.end(), std::ostream_iterator<int>(std::cout, ":"));
}
Run Code Online (Sandbox Code Playgroud)

但是这会给出错误:

main.cpp: …
Run Code Online (Sandbox Code Playgroud)

c++ templates c++11 type-deduction

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

C++ STL问题:分配器

我有一个关于C++ STL的(可能是愚蠢的)问题.当我创建一个容器(向量,集合,映射等)时,它是在堆栈上还是在堆上分配的?如果我制作一组并放置500万个字符串,我是否需要担心堆栈溢出?

c++ stl

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

给出布尔结果的T-SQL过程

我正在努力使用T-SQL程序,我希望你能提供帮助.

我需要知道是否

  1. 表中存在给定ID的行
  2. 如果存在一个(或多个),则最新的一个具有另一个ID设置为5.

因此,我们需要获取行的第一个表有两个相关的ID:CaseID和LocationID,这些都是整数.第二个表有一个名为StateID的相关ID.

目前我可以判断该行是否存在于表部分中,但是当我尝试执行任何操作时,Enterprise Manager会在END语句之前给出语法错误.

CREATE PROCEDURE [dbo].[HasActiveCase] 
(
    @LocationID INTEGER
)

AS

DECLARE @CaseID AS INTEGER
SELECT @CaseID=CaseID FROM dbo.Cases WHERE @LocationID=LocationID

SELECT CASE WHEN 
    @CaseID IS NULL 
THEN 
    0
ELSE  
    -- do something here to check CaseEvents.StateID is not 5 (closed)
END
GO
Run Code Online (Sandbox Code Playgroud)

可能有一种方法可以在JOIN或其他东西中获得我需要的东西,但我在这里是一个完整的新手.

检查StateID最简单(理解)的方法不是5并将结果作为true/false返回?(我知道SQLServer没有布尔类型,但确实有Bit类型.)

另外在样式问题上:ID中的值具有与之关联的文本字段 - 例如,CaseEvents.StateID的文本为"已关闭".我应该将值作为ID返回,然后替换代码中的ID或返回ID已经替换为文本的对象吗?在一组中永远不会有超过20或30个结果返回,并且该表永远不会非常大,因为花费5年才能获得2000个结果.

注意:不能使用linq(或任何其他.NETty),因为这将从VB6程序调用.

更新:

一次只能打开一个案例,因此只有最新的项目才有意义.

可能的情况是:

  1. 没有任何案件开过.这应该返回0.
  2. 案件先前已经开启,但现已关闭.这也应该返回0.
  3. 存在已打开的案例.这应该返回1.

t-sql sql-server-2005

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

跨对象数组的最小值/最大值

它已经完成了死亡,在SO和围绕'网络.但是我想知道是否有办法利用标准的最小/最大功能:

Array.max = function(array) {
    return Math.max.apply(Math, array);
};

Array.min = function(array) {
    return Math.min.apply(Math, array);
};
Run Code Online (Sandbox Code Playgroud)

所以我可以搜索一系列对象:

function Vector(x, y, z) { this.x = x; this.y = y; this.z = z; }
var ArrayVector = [ /* lots of data */ ];
var min_x = ArrayVector.x.min(); // or
var max_y = ArrayVector["y"].max();
Run Code Online (Sandbox Code Playgroud)

目前,我必须遍历数组并手动比较对象值,并根据循环的特定需要制作每个对象值.更通用的方式会很好(如果稍慢).

javascript

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

将来还有XML的地方吗?

现在很多人似乎都在转向JSON进行Web通信,我想知道为什么要继续使用XML.

我很欣赏XML在JSON上有很多年,在此期间它被广泛采用.然而,它如此被采用的事实似乎是继续使用它的一个决定性原因.

有没有一个很好的理由为什么不应逐步淘汰XML以支持JSON?

xml json

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

单元测试添加/获取方法对

我是一名用C#编写的.Net开发人员,我被分配到一个项目,其经理希望它经过彻底的单元测试,主要是强调隔离,这样一个逻辑错误理想地失败了一个测试,并且测试之间没有依赖关系.

今天我们正在讨论测试模式,并出现了以下问题:

假设我们有一个名为的对象MyHashTable,它实现了:

void Add(string key, string value);

string GetValue(string key);
Run Code Online (Sandbox Code Playgroud)

我们想要独立地测试每个方法.当然,主要的问题是,从逻辑上讲,我们无法获得我们从未添加过的内容,而且我们无法在没有获取的情况下验证添加的内容.我们已经听过并读过关于存根/模拟和其他可能有助于克服这些问题的技术,但无法确定哪种解决方案最具可读性和可维护性.

因此,我要求提供建议/想法如何单独测试这些方法,如果可以,请为您的建议包含优缺点.谢谢!

c# unit-testing

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