问题列表 - 第1286页

为什么在没有尝试I/O的情况下检测TCP套接字是否被对等端正常关闭是不可能的?

作为最近一个问题的后续内容,我想知道为什么在没有尝试在TCP套接字上进行读/写操作的情况下,为什么Java不可能检测到套接字已被对等端正常关闭?无论是使用前NIO Socket还是NIO ,情况似乎都是如此SocketChannel.

当对等体正常关闭TCP连接时,连接两端的TCP堆栈都知道这一事实.服务器端(启动关闭的那个)最终处于状态FIN_WAIT2,而客户端(未明确响应关闭的那个)最终处于状态CLOSE_WAIT.为什么没有一个方法SocketSocketChannel可以查询TCP堆栈看到底层的TCP连接是否已经终止?是不是TCP堆栈没有提供这样的状态信息?或者这是一个设计决定,以避免昂贵的内核调用?

在已经发布了这个问题的答案的用户的帮助下,我想我会看到问题可能来自哪里.未明确关闭连接的一方最终处于TCP状态,CLOSE_WAIT这意味着连接正在关闭并等待一方发出自己的CLOSE操作.我认为isConnected返回trueisClosed返回是公平的false,但为什么不存在类似的东西isClosing呢?

以下是使用pre-NIO套接字的测试类.但使用NIO可获得相同的结果.

import java.net.ServerSocket;
import java.net.Socket;

public class MyServer {
  public static void main(String[] args) throws Exception {
    final ServerSocket ss = new ServerSocket(12345);
    final Socket cs = ss.accept();
    System.out.println("Accepted connection");
    Thread.sleep(5000);
    cs.close();
    System.out.println("Closed connection");
    ss.close();
    Thread.sleep(100000);
  }
}


import java.net.Socket;

public class MyClient {
  public static …
Run Code Online (Sandbox Code Playgroud)

java sockets network-programming tcp

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

如何使用TSQL截断数据库中的所有表?

我有一个数据库的测试环境,我想在测试周期开始时用新数据重新加载.我对重建整个数据库不感兴趣 - 只需简单地"重新设置"数据.

使用TSQL从所有表中删除所有数据的最佳方法是什么?是否有可以使用的系统存储过程,视图等?我不想为每个表手动创建和维护truncate table语句 - 我希望它是动态的.

t-sql sql-server

197
推荐指数
7
解决办法
28万
查看次数

帮助我了解QA在Scrum中的工作原理

显然我们使用Scrum开发方法.以下是一般情况:

开发人员试图完成他们的任务.通常,任务需要完成大部分sprint.QA讨厌Dev发布他们可以测试的内容,Dev在sprint结束前一两天将一些错误的代码抛给QA,并花费其余的时间来修复QA发现的错误.QA永远无法按时完成任务,冲刺很难按时发布,而Sp和QA在冲刺结束时有几天可怜.

当可释放的Dev任务占用大部分冲刺时,scrum应该如何工作?

感谢大家参与讨论.由于这是一个相当开放的问题,似乎没有一个"答案" - 下面有很多好的建议.我将尝试总结一些"带回家"的观点,并做出一些澄清.

(顺便说一下 - 这是放置这个的最好的地方还是我应该把它放在'答案'?)

要思考/行动的要点:

  • 需要确保开发人员任务尽可能小(粒度).
  • Sprint长度应根据平均任务长度进行适当调整(例如,1周任务的冲刺应至少为4周)
  • 团队(包括QA)需要努力提高估算的准确性.
  • 如果最适合团队,可以考虑并行进行单独的QA冲刺,但要进行抵消
  • 单元测试!

agile scrum

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

C#中的"<>"语法是什么

我一直在学习C#的基础知识,但没有得到一个很好的解释:

var l = new List<string>();
Run Code Online (Sandbox Code Playgroud)

我不知道<string>它在做什么,或者它List是否正在做魔术.我也看到过< >标签中抛出的对象.

有人可以用例子向我解释一下吗?

.net c#

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

如何在netbeans 6.5中隐藏文本限制行?

有没有办法隐藏netbeans 6.5中的文本限制线?

netbeans

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

HTML复选框可以设置为只读吗?

我以为他们可以,但是因为我不把钱放在我的嘴里(可以这么说)设置readonly属性实际上似乎没有做任何事情.

我宁愿不使用Disabled,因为我希望检查复选框与表单的其余部分一起提交,我只是不希望客户端在某些情况下能够更改它们.

html checkbox

787
推荐指数
20
解决办法
87万
查看次数

.NET - 如何将"大写"分隔的字符串拆分为数组?

我如何从这个字符串:"ThisIsMyCapsDelimitedString"

...到这个字符串:"这是我的帽子划分字符串"

VB.net中最少的代码行是首选,但C#也是受欢迎的.

干杯!

.net regex string algorithm pascalcasing

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

跨浏览器"跳转到"/"滚动"textarea

我有一个带有许多输入行的textarea,并且会触发一个JavaScript事件,这需要我将textarea滚动到第345行.

scrollTop除了我可以告诉它的像素级别,我想要的是我想要的东西,我想要一个在线级操作的东西.令事情复杂化的是,再次说明,不可能使textareas不是换行.

html javascript css

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

提升:火灾和忘记异步函数调用?

我想以一次性方式调用函数调用.在Boost/C++中执行此操作的最佳方法是什么?

我想传递两个参数,不需要结果.

c++ boost asynchronous

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

如何在.Net中获取视频缩略图?

我正在寻找一个从输入视频中检索单个帧的函数,所以我可以将它用作缩略图.

这些方面的东西应该有效:

// filename examples: "test.avi", "test.dvr-ms"
// position is from 0 to 100 percent (0.0 to 1.0)
// returns a bitmap
byte[] GetVideoThumbnail(string filename, float position)
{
}
Run Code Online (Sandbox Code Playgroud)

有没有人知道如何在.Net 3.0中这样做?

正确的解决方案将是此功能的"最佳"实现.避免选择空白帧的奖励点.

.net c# video-processing

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