问题列表 - 第1541页

什么时候,如果"代码行数"是一个有用的指标?

有些人声称代码最大的敌人是它的大小,我倾向于同意.然而,每天你都会听到类似的事情

  • 我在一天内写了一些代码.
  • 我拥有x行代码.
  • Windows是x百万行代码.

问题:"#lines of code"何时有用?

ps:请注意,在做出这样的陈述时,语气"越多越好".

metrics

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

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

今天常用的最强哈希算法是什么?

我正在构建一个Web应用程序,并希望使用最强的哈希算法来实现密码.sha512,whirlpool,ripemd160和tiger192,4之间有什么区别?哪一个被认为加密更强?

hash

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

在Emacs中导航重复标记定义的最佳方法是什么?

在emacs中,哪些是导航到特定功能的最佳选项,其名称可能会显示在几个不同的文件中?在etags中,您只能一次一个地循环浏览标签,如果您要查找的功能名称很受欢迎,可能需要一段时间.

tags emacs

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

将多行更新到SQL表中

假设有一个完全填充的数据字符串String [n] [3] myData.

我想做这个:

for (String[] row : myData)
{
   SQL = "update mytable set col3 = row[2]
   where col1 = row[0] and col2=row[1];" 
}
Run Code Online (Sandbox Code Playgroud)

显然我已经离开了很多,但我想尽可能简洁地表达这个想法.

有一种简单的方法可以在单个DB命令中执行此操作吗?一个不那么简单的方法怎么样?

编辑:数据不是来自另一个表(这是一个Web表单提交 - 多选择考试)
看到该应用程序是面向Web的,它必须是注入证明.参数化查询是我的首选方式.
我正在使用MS-SQL Server 2005

编辑:关闭并重新询问多个数据库更新:

编辑:重新打开,因为这似乎是一个受欢迎的问题

c# sql asp.net

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

有没有办法从对象中删除未知的事件侦听器?

我希望有一个可重复使用的按钮,可以注册许多不同的回调之一,由外部源确定.设置新的回调时,我想删除旧回调.我还希望能够随时在外部清除回调.

public function registerButtonCallback(function:Function):void
{
  clearButtonCallback();

  button.addEventListener(MouseEvent.CLICK, function, false, 0, true);
}

public function clearButtonCallback():void
{
  if (button.hasEventListener(MouseEvent.CLICK) == true)
  {
    // do something to remove that listener
  }
}
Run Code Online (Sandbox Code Playgroud)

我在这里看到了在回调中使用"arguments.callee"的建议,但我不希望将该功能与回调相关联 - 例如,我可能希望能够单击该按钮两次.

建议?

actionscript-3

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

如何在不阻塞的情况下在unix控制台应用程序中捕获单击键?

我有一个用C编写的非常简单的TCP服务器.它无限期地运行,等待连接.在Windows上,我select用来检查套接字上的活动,如果没有,我有以下代码允许我通过按键盘上的'q'退出:

if( kbhit() ) {
   char c = getch();
   if( c == 'q' ) break;
}
Run Code Online (Sandbox Code Playgroud)

这在unix上kbhit不起作用,因为它不存在并且getch工作方式不同.我找到了一些示例代码,用于tcsetattr更改终端设置并允许逐个字符输入.在调用init函数之后,我打开/ dev/stdin(with O_NONBLOCK)并读取一个字符,但是read( f, &c, 1 )阻塞直到一个字符被命中.

我想我可以生成一个单独的线程并让它无限期地等待,然后如果用户点击'q'则发出第一​​个线程的信号,但这看起来有点笨拙.当然有一种更简单的方法吗?

c unix terminal input

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

用户密码盐的最佳长度是多少?

当盐析和散列用户密码时,任何显然都会有所帮助.盐有多长时间有什么最佳做法吗?我将盐存储在我的用户表中,所以我希望在存储大小和安全性之间进行最佳权衡.是一个随机的10个字符的盐吗?或者我需要更长的时间?

encryption hash salt

126
推荐指数
4
解决办法
6万
查看次数

Windows下的"Unix shell" - 类似脚本

我需要shell脚本大师的帮助.

我有一个.txt文件(日志),它跟踪几行客户端的IP地址,格式与此类似:

Line1 - Client IP [192.168.0.1] Other data
Line2 - Client IP [192.168.0.2] Other data
Line3 - Client IP [192.168.0.3] Other data
Line4 - Client IP [192.168.0.2] Other data
Line5 - Client IP [192.168.0.1] Other data
...
Run Code Online (Sandbox Code Playgroud)

我需要创建脚本:

  • 从此文件中提取IP地址
  • 对IP地址进行分组(仅报告一次相同的IP地址)
  • 输出具有生成的IP地址的文件

对于前面的示例,生成的文件将是:

192.168.0.1
192.168.0.2
192.168.0.3
Run Code Online (Sandbox Code Playgroud)

我在Windows操作系统上,但我可以使用像CygwinUnix Tools这样的工具(在Windows下提供类似Unix的命令,如grep,sort等).

没有脚本的解决方案也可能是好的.

在此先感谢您的帮助.

unix windows shell scripting

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

CountDownLatch与Semaphore

使用有什么好处

java.util.concurrent.CountdownLatch

代替

java.util.concurrent.Semaphore

据我所知,以下片段几乎相同:

1.信号量

final Semaphore sem = new Semaphore(0);
for (int i = 0; i < num_threads; ++ i)
{
  Thread t = new Thread() {
    public void run()
    {
      try
      {
        doStuff();
      }
      finally
      {
        sem.release();
      }
    }
  };
  t.start();
}

sem.acquire(num_threads);
Run Code Online (Sandbox Code Playgroud)

2:CountDownLatch

final CountDownLatch latch = new CountDownLatch(num_threads);
for (int i = 0; i < num_threads; ++ i)
{
  Thread t = new Thread() {
    public void run()
    {
      try
      {
        doStuff();
      }
      finally …
Run Code Online (Sandbox Code Playgroud)

java concurrency multithreading semaphore countdownlatch

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