在哪里定义基于任务的asynchronous方法的callback

在这个问题之后 ,我尝试使用TPL实现asynchronous方法,并尝试遵循TAP准则。 我希望我的asynchronous方法在完成时执行callback。 据我所知,有三种方法可以做到这一点。 1)在我的任务委托中手动callback public Task DoWorkAsync(DoWorkCompletedCallback completedCallback) { return Task.Factory.StartNew( { //do work //call callback manually completedCallback(); }); } 2)在任务委托中为任务分配callback public Task DoWorkAsync(DoWorkCompletedCallback completedCallback) { return Task.Factory.StartNew( { //do work } ).ContinueWith(completedCallback); //assign callback to Task } 3)将呼叫分配给主叫方的任务 public Task DoWorkAsync() { return Task.Factory.StartNew( { //do work }); } public void SomeClientCode() { […]

WebSockets的ASP.NET教程

是否有一个简单的,脚踏实地的ASP.NET 4.0 WebSockets服务器和客户端实现样本/示例/教程让我开始? 我知道这个问题已经被问到,但没有得到妥善的回答。 关于客户端有很多东西,但是在ASP.NET中找不到关于服务器端的简单解释 谢谢! 〜更新:我find了本教程,但无法使其工作,尝试连接后连接closures。 任何人都可以使它工作? http://www.undisciplinedbytes.com/2010/06/html-5-c-web-sockets-server-and-asp-net-client-implementation/

invisible()函数做了什么?

R帮助将invisible()解释为“返回对象的临时不可见副本的函数”。 我很难理解什么是invisible() 。 你能解释什么是invisible() ,什么时候这个函数可以有用? 我已经看到了invisible()几乎总是用在print()方法函数中。 这里是一个例子: ### My Method function: print.myPrint <- function(x, …){ print(unlist(x[1:2])) invisible(x) } x = list(v1 = c(1:5), v2 = c(-1:-5) ) class(x) = "myPrint" print(x) 我在想,如果没有invisible(x) ,我就不能像这样做: a = print(x) 但事实并非如此。 所以,我想知道什么是invisible() ,它在哪里可以是有用的,最后在上面的方法print函数中它的作用是什么? 非常感谢您的帮助。

我可以将Visual Studio 2012 Express Edition用于商业用途吗?

我知道早期版本的Visual Studio Express(2010和2008)已经问过这个问题,但是我还没有find与Visual Studio Express 2012相同的具体答案。 我打算做一些小的纯C#应用程序,不包括任何其他第三方库。 这个问题谈到了2010版和VS 2012 RC,而不是稍后发布的Visual Studio Express 2012。 这个问题的答案提供了一个现在不存在的FAQ的链接。 它被redirect到一个页面,您可以下载最新的VS 2012.经过一番挖掘,我能够在这里find该页面的存档。 那么我再也不能确定它是否适用于VS2012 Express。 即使经过多次挖掘,我也无法findVS2012的任何FAQ部分。 接下来,我尝试从这里挖掘出Microsoft产品的最终用户许可条款,但是我找不到VS 2012 Express版本的许可条款。 我在这里查看了VS2012的许可白皮书。 在第26页中,它声明“Visual Studio Express可用于构build生产应用程序”,这意味着我们可以构build用于商业目的的应用程序/程序?

Mapreduce初学者程序实例

我是mapreduce程序的初学者,如果问题不重要,请原谅我。 我想了解更多关于mapreduce程序。 为了理解编程方法,我想练习除wordcount程序以外的其他程序。 任何人都可以build议好的和简单的mapreduce例子除了wordcount.I使用eclipse juno和cdh4 请帮帮我

stream浪者configuration壳vs木偶vs厨师

我有以下设置: 许多不同的项目是独立的git仓库,但都具有相同的服务器configuration 每个项目依次依赖于许多其他项目,我们使用composer php依赖pipe理器把它们放在一起(PHP语言在这里)。 我想使用Vagrant,并在每个存储库中包含一个Vagrant文​​件,所以我的团队成员可以克隆一个存储库,运行vagrant up并准备好去。 我现在的问题是针对configuration。 我需要安装一些工具和软件包,比如apache,git,mysql和几个php软件包,然后下载一些文件(比如最近的一个开发数据库转储文件),把所有东西放在/ var / www中,然后运行composer install命令。 所以一个select是使用厨师或傀儡等食谱的经理。 另一种方法是编写一个bash文件并使用shellconfiguration。 我对厨师/傀儡没有太多的经验,所以自然而然,使用shell选项似乎更容易,但是我想了解,如果这从长远来看不是一个好的/可行的select。 为什么对我来说这似乎是一个不好的方法去与木偶/厨师: 我明白,我将不得不使用几种不同的食谱,并且几乎总是对我的不同的储存库使用相同的食谱,所以我将不得不将所有的食谱包括在所有的储存库中。 考虑有20个回购,需要10个配方,这意味着我将需要添加200个食谱作为一个git子模块或类似(也是每个团队成员需要克隆存储库,然后克隆10个配方库,然后只运行vagrant了每项目)。 相反,我只需要用我的shell脚本有一个小的回购,并克隆它20次。 我可能错过了一些东西,所以请告知我是否应该select厨师/傀儡,为什么它有意义,即使我的存储库都有一个非常类似的服务器设置。

用户/通过使用RESTful WCF和Windows窗体的身份validation

为Windows Forms应用程序与IIS托pipe的RESTful WCF服务交谈实施授权/身份validation的最佳方法是什么? 我问的原因是我很困惑,筛选了不同的文章和职位expression不同的方法,并最终在WCF安全最佳实践“( http://www.codeplex.com/WCFSecurityGuide )上达到约650页的文档我是根据我的情况,只是不确定哪种方法是最好的,以及如何开始实施。 我从本文开始使用“使用WCF 3.5devise和构buildREST风格的Web服务”( http://msdn.microsoft.com/zh-cn/library/dd203052.aspx )以及REST风格的WCF服务上的PDCvideo。很棒,帮助我实现了我的第一个REST友好的WCF服务, 我有了服务工作后,我回到了实施安全,见。 “安全注意事项”(页面上的四分之一),并试图按照说明实现一个HTTP授权标头,但是我发现代码是不完整的(请参阅UserKeysvariables从未声明)。 这是我试图研究更多关于如何做到这一点(使用HMAC哈希与“授权”HTTP标头,但在谷歌上找不到多less?),这导致我到其他文章有关消息级别的安全性,形成authentication和自定义validation器,坦率地说,我不确定哪个是现在采取的最好和最合适的方法。 所以所有这些(并感谢听到直到现在!),我想我的主要问题是, – 我应该使用哪种安全实施? – 有没有办法避免每个WCF调用发送用户名/密码? 如果在开始时已经build立了一个连接,我宁愿不发送这些额外的字节,这将在login之后允许进行后续的呼叫。 – 如果我使用SSL,是否真的应该关心纯文本? 如上所述,.NET 3.5 win表单应用程序,IIS托pipe的WCF服务,但是重要的是我希望任何和所有的WCF服务都需要这个授权过程(不过它应该是会话,http头或其他),因为我不希望任何人都能够从networking上获得这些服务。 我知道上面的post很大,但我不得不expression我已经倒闭的路线,我需要完成的任何和所有的帮助,我非常感激。 PS:我也知道这篇文章如何使用WCF使用用户名/密码+ SSLconfiguration安全的REST风格的服务,如果社区build议我离开REST的WCF服务,我可以做到这一点,但是我开始保持一致任何公共的API来。 我认为这是很重要的,我说我如何访问我的WCF服务(联系服务正在工作,但什么是validation凭据 – 然后返回成员对象的最佳方式? WebChannelFactory<IMemberService> cf = new WebChannelFactory<IMemberService>( new Uri(Properties.Settings.Default.MemberServiceEndpoint)); IMemberService channel = cf.CreateChannel(); Member m = channel.GetMember("user", "pass"); 从MS文章(和我自己的一些testing)实施的一半代码: public Member GetMember(string username, string password) { if […]

你可以手动实现cocoa绑定?

我已经在我自己的NSView子类实现绑定了一个裂缝。 它可以工作,但从nib文件绑定到文件所有者时,保留周期存在问题。 稍微阅读一下后,我发现苹果几年前也有同样的问题,但是已经用一些无证的类(NSAutounbinder)修复了它。 关于保留周期问题,有一个冗长的讨论http://www.cocoabuilder.com/archive/message/cocoa/2004/6/12/109600 。 解决方法是在窗口控制器释放之前解除所有绑定,而不是在解除分配之前,放在像windowWillClose:这样的地方。 这对我来说似乎是一个不必要的手段。 我的问题是这样的:有没有办法使自定义绑定,以及由苹果公司的作品,而不使用无证的function? 我是否以错误的方式去做这件事? 更新2:我发现了一个解决scheme,允许手动实现的绑定工作完全像苹果的绑定。 它利用未logging的NSAutounbinder类,没有实际使用未logging的特征。 我将在今天晚些时候发布解决scheme。 更新: 我试着使用exposeBinding:它似乎没有任何区别 。 然而, NSObject的bind:toObject:withKeyPath:options:一半的工作。 它传播从绑定到绑定(即从模型/控制器到查看)的变化,但不会以相反的方式工作。 而且,虽然绑定器显然被观察到, observeValueForKeyPath:ofObject:change:context:从不被触发。 示例项目在这里: http : //www.tomdalling.com/wp-content/BindingsTest.zip 苹果的文档表明你实际上必须重写bind:toObject:withKeyPath:options:来实现手动绑定。 看到这里: http : //developer.apple.com/documentation/Cocoa/Conceptual/CocoaBindings/Concepts/HowDoBindingsWork.html 侧注:我已经调查了无证的NSAutounbinder是如何工作的,这里是我所知道的。 绑定创build到NSWindowController时,绑定对象实际上是一个NSAutounbinder,从NSWindowController通过 – [NSWindowController _autounbinder]获取。 NSAutounbinder是NSWindowController对象的非保留代理。 避免保留周期问题是没有保留的。 当 – [NSWindowController release]被调用并且retainCount == 1时,NSAutounbinder将所有绑定解除绑定到它自己。 这确保在释放对象之前没有悬挂指针。

为什么Sun Java中的HashSet实现使用HashMap作为后台?

查看Java 6的源代码, HashSet<E>实际上是使用HashMap<E,Object> ,在Set的每个条目上都使用了虚拟对象实例。 我认为这是浪费4个字节(在32位机器上)的大小的条目本身。 但是,为什么仍然使用? 除了维护代码更容易之外,是否有任何理由使用它?

如何确定Android设备是否有触摸屏?

我花了相当多的时间让我的用户界面只能使用键盘input。 但最终我不确定是否可以依靠Android设备都具有触摸屏的假设。 有没有办法确定一个Android设备是否有触摸屏?