问题列表 - 第12055页

是否应该始终在AsyncCallback中调用EndInvoke委托?

我读了Use AsyncCallback,有这段代码:

using System;
using System.Threading;
using System.Runtime.Remoting.Messaging;
class MainClass
{
  delegate int MyDelegate(string s);

  static void Main(string[] args)
  {
    MyDelegate X = new MyDelegate(DoSomething);
    AsyncCallback cb = new AsyncCallback(DoSomething2);
    IAsyncResult ar = X.BeginInvoke("Hello", cb, null);

    Console.WriteLine("Press any key to continue");
    Console.ReadLine();
  }
  static int DoSomething(string s)
  {
    Console.WriteLine("doooooooooooooooo");
    return 0;
  }

  static void DoSomething2(IAsyncResult ar)
  {
    MyDelegate X = (MyDelegate)((AsyncResult)ar).AsyncDelegate;
    X.EndInvoke(ar);
  }
}
Run Code Online (Sandbox Code Playgroud)

需要注意的是在DoSomething2,这是一个AsyncCallback,委托明确由命令杀死EndInvoke.

这真的有必要吗?因为AsyncCallback除非并且直到委托方法完成运行,否则不会被调用.

.net multithreading

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

纳秒到毫秒 - 快速除以1000000

我想将输出从gethrtime转换为毫秒.

显而易见的方法是除以1000000.但是,我经常这样做,并想知道它是否会成为瓶颈.

处理1000000这样的数字时是否有优化的除法运算?

注意:任何代码都必须是可移植的.我正在使用gcc,这通常是在Sparc硬件上

使用下面的代码进行一些快速测试...希望是对的.

#include <sys/time.h>
#include <iostream>

using namespace std;

const double NANOSECONDS_TO_MILLISECONDS = 1.0 / 1000000.0;

int main()
{
    hrtime_t start;
    hrtime_t tmp;
    hrtime_t fin;

    start = gethrtime();
    tmp = (hrtime_t)(start * NANOSECONDS_TO_MILLISECONDS);
    fin = gethrtime();

    cout << "Method 1"
    cout << "Original val: " << start << endl;
    cout << "Computed: " << tmp << endl;
    cout << "Time:" << fin - start << endl;

    start = gethrtime();
    tmp = (start / 1000000);
    fin = gethrtime(); …
Run Code Online (Sandbox Code Playgroud)

c++ gcc solaris sparc

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

Visual Studio 2008输出 - 隐藏DLL加载和卸载

Visual Studio在其输出面板中自动显示dll加载/卸载,如下所示:

'DialogAppDEBUG.exe': Unloaded 'C:\WINDOWS\system32\wbem\fastprox.dll'
'DialogAppDEBUG.exe': Unloaded 'C:\WINDOWS\system32\ntdsapi.dll'
'DialogAppDEBUG.exe': Unloaded 'C:\WINDOWS\system32\wldap32.dll'
'DialogAppDEBUG.exe': Unloaded 'C:\WINDOWS\system32\wbem\wbemsvc.dll'
'DialogAppDEBUG.exe': Unloaded 'C:\WINDOWS\system32\wbem\wbemprox.dll'
'DialogAppDEBUG.exe': Unloaded 'C:\WINDOWS\system32\wbem\wbemcomn.dll'
Run Code Online (Sandbox Code Playgroud)

无论如何暂时禁用此功能?当通过DebugOutputString()进行大量调试时,这些消息总是倾向于将我的打印件从面板上移开,我不得不四处寻找它们,这使得这个过程变得更加麻烦.我用Google搜索并搜索了我能想到的所有VS选项,但无济于事......

panel visual-studio-2008

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

json解码在php中

我有以下json字符串,我想从中检索电子邮件地址.我怎么在PHP中做到这一点?

{"communications":{"communication":[{"@array":"true","@id":"23101384","@uri":"xyz/v1/Communications/1111","household":{"@id":"111111","@uri":"xyz/v1/Households/5465465"},"person":{"@id":"","@uri":""},"communicationType":{"@id":"1","@uri":"xyz/v1/Communications/CommunicationTypes/1","name":"Home Phone"},"communicationGeneralType":"Telephone","communicationValue":"1111","searchCommunicationValue":"2693240758","listed":"true","communicationComment":null,"createdDate":"2008-11-10T12:31:26","lastUpdatedDate":"2009-08-11T23:40:02"},{"@array":"true","@id":"11111","@uri":"xyz/v1/Communications/111111111","household":{"@id":"14436295","@uri":"xyz/v1/Households/11111"},"person":{"@id":"2222222","@uri":"xyz/v1/People/22222222"},"communicationType":{"@id":"2","@uri":"xyz/v1/Communications/CommunicationTypes/2","name":"Work Phone"},"communicationGeneralType":"Telephone","communicationValue":"11111","searchCommunicationValue":"789787987","listed":"false","communicationComment":null,"createdDate":"2009-08-09T15:49:27","lastUpdatedDate":"2009-08-11T23:40:02"},{"@array":"true","@id":"11111","@uri":"xyz/v1/Communications/11111","household":{"@id":"1111","@uri":"xyz/v1/Households/1111"},"person":{"@id":"244404","@uri":"xyz/v1/People/1111"},"communicationType":{"@id":"3","@uri":"xyz/v1/Communications/CommunicationTypes/3","name":"Mobile"},"communicationGeneralType":"Telephone","communicationValue":"22222","searchCommunicationValue":"5475454","listed":"true","communicationComment":null,"createdDate":"2008-11-10T12:31:26","lastUpdatedDate":"2009-08-11T23:40:02"},{"@array":"true","@id":"15454","@uri":"xyz/v1/Communications/111111","household":{"@id":"14436295","@uri":"xyz/v1/Households/1111"},"person":{"@id":"244444474","@uri":"xyz/v1/People/111111"},"communicationType":{"@id":"4","@uri":"xyz/v1/Communications/CommunicationTypes/4","name":"Email"},"communicationGeneralType":"Email","communicationValue":"email@needthis.com","searchCommunicationValue":"email@needthis.com","listed":"true","communicationComment":null,"createdDate":"2008-11-10T12:31:26","lastUpdatedDate":"2009-08-11T23:39:06"}]}}
Run Code Online (Sandbox Code Playgroud)

php json

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

向我解释FFT

我想获取音频PCM数据并在其中找到峰值.具体来说,我想返回峰值出现的频率和时间.

我对此的理解是我必须将PCM数据转储到一个数组中,将其设置为实数值,将复杂的部分设置为0.然后我接受FFT,然后得到一个数组.如果数组中的每个数字都是一个幅度值,我如何获得与每个数字相关的频率?另外,我是否考虑了真实和复杂部分的大小或者只是丢弃了复杂的值?

最后,如果我想在一首歌中找到峰值,我是否只需设置一个小窗口进行FFT并将其滑过所有音频?有关该窗口应该有多大的任何建议?

audio signals fft frequency

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

嵌套的yield返回IEnumerable

我有以下功能来获取卡的验证错误.我的问题涉及处理GetErrors.两种方法都具有相同的返回类型IEnumerable<ErrorInfo>.

private static IEnumerable<ErrorInfo> GetErrors(Card card)
{
    var errors = GetMoreErrors(card);
    foreach (var e in errors)
        yield return e;

    // further yield returns for more validation errors
}
Run Code Online (Sandbox Code Playgroud)

是否可以返回所有错误GetMoreErrors而无需通过它们进行枚举?

想一想这可能是一个愚蠢的问题,但我想确保我不会出错.

c# ienumerable yield yield-return

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

如何在响应中返回某个字符后关闭netcat连接?

我们有一个非常简单的tcp消息传递脚本,它将一些文本捕获到服务器端口,该端口返回并显示响应.

我们关心的脚本部分看起来像这样:

cat someFile | netcat somehost 1234
Run Code Online (Sandbox Code Playgroud)

一旦我们得到某个字符代码(特别是&001C)返回,服务器返回的响应就是"完成" .

当我收到这个特殊字符时,如何关闭连接?

(注意:服务器不会为我关闭连接.虽然我现在只是CTRL + C脚本,但我可以告诉它已完成,我希望能够一个接一个地发送许多这些消息.)

(注意:netcat -w x不够好,因为我希望尽快推送这些消息)

linux bash netcat

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

几个类共享的一种方法

我只有一个方法,我需要几个不同的类来访问,只是为一个方法创建一个实用程序类似乎很蹩脚.需要使用此方法的类已经继承了一个抽象类,因此我无法使用继承.在这种情况下你们会做什么?

.net c# architecture

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

你如何从mysql中选择字符串中的最后一个字符= x?

我想从数据库中选择mov_id列中最后一个字符等于1和2的行.

查询怎么样?

mysql

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

如何在java中处理多种语言?

我正在编写一个使用jsp和java的程序,我如何使用属性文件来支持多种语言?顺便说一句,总有一些东西像\ u4345,这是什么?他们怎么来的?

java internationalization

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