jjzjj

reactive-programming

全部标签

c# - 找不到部分路径 'C:\Program Files (x86)\IIS Express\~\TextFiles\ActiveUsers.txt'

我尝试了多种方法从名为TextFiles的文件夹访问我的VisualStudio2012解决方案中的文本文件using(System.IO.StreamWriterfile=newSystem.IO.StreamWriter(@"~/TextFiles/ActiveUsers.txt",true)){file.WriteLine(model.UserName.ToString());}但是一直报错Couldnotfindapartofthepath'C:\ProgramFiles(x86)\IISExpress\~\TextFiles\ActiveUsers.txt'.不知道哪里错了

c# - 如何使用 Reactive Extensions 使用最大窗口大小来限制事件?

场景:我正在构建一个UI应用程序,每隔几毫秒从后端服务获取通知。收到新通知后,我想尽快更新UI。因为我可以在短时间内收到很多通知,而且我总是只关心最新的事件,所以我使用了ReactiveExtensions框架的Throttle()方法。这让我可以忽略紧跟新通知的通知事件,因此我的UI保持响应。问题:假设我将通知事件的事件流限制为50毫秒,并且后端每10毫秒发送一次通知,则Thottle()方法将永远不会返回事件,因为它会一次又一次地重置其滑动窗口。在这里,我需要一些额外的行为来指定诸如超时之类的东西,以便在事件吞吐量如此之高的情况下,我每秒至少可以检索一个事件。我如何使用Reacti

c# - 使用 Reactive Extensions 在 TextChanged 上搜索

我试图在包含10000多条记录的数据库表上实现即时搜索。搜索在搜索文本框内的文本发生变化时开始,当搜索框变空时我想调用一个不同的方法来加载所有数据。此外,如果用户在加载另一个搜索结果时更改搜索字符串,则应停止加载这些结果以支持新搜索。我像下面的代码一样实现了它,但我想知道是否有更好或更干净的方法来使用Rx(react性扩展)运算符,我觉得在第一个可观察对象的订阅方法中创建第二个可观察对象是命令式多于声明式,if语句也是如此。varsearchStream=Observable.FromEventPattern(s=>txtSearch.TextChanged+=s,s=>txtSear

c# - Reactive Extensions (Rx) 可以跨进程或机器边界使用吗?

依稀记得很久以前看到过一些关于这个的讨论,但从那以后就再也没有听到过任何消息。那么基本上您可以在远程机器上订阅IObservable吗? 最佳答案 您可以使用IObservable.Remotable通过.NETRemoting直接从其他机器使用可观察对象。 关于c#-ReactiveExtensions(Rx)可以跨进程或机器边界使用吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questi

c# - 为什么 Reactive Extensions 在编译时向微软发送 HTTP GET?

我从这个站点下载了ReactiveExtensionsv1.0SP1的稳定版本http://msdn.microsoft.com/en-us/data/gg577610,我在.NetFramework3.5环境(VisualStudio2008)中使用它我尝试在一个项目中使用ReactiveExtensions,发现启动速度非常慢。转到LinqPad,我输入了以下“C#表达式”:(newint[0]).ToObservable()我还引用了System.Reactive.dll并导入了System.Reactive.Linq命名空间。当我运行它时,编译和运行需要12秒。我打开Proce

c# - 有用或不重要的双重接口(interface)的例子

最近ErikMeijer和其他人展示了IObservable/IObserver如何成为dualIEnumerable/IEnumerator的。它们是双重的这一事实意味着在一个接口(interface)上的任何操作在另一个接口(interface)上都有效,从而为ReactiveExtentionsfor.Net提供了理论基础。是否存在其他双接口(interface)?我对任何示例都感兴趣,而不仅仅是基于.Net的示例。 最佳答案 另一个例子是TextReader和TextWriter,尽管噪声比可观察对象和可枚举对象的情况还要多

c# - 如何在32位应用程序中获取64位 "program files"目录

我有一个以x86模式(在c#中)编译的应用程序,我需要从中访问64位程序文件文件夹(当然是64位Windows)中存在的某个文件。我不想在我的应用程序中将C:\ProgramFiles硬编码为字符串,因为一些目标计算机可能将Windows安装在不同的驱动器中,或者可能使用其他语言。我遇到的问题是使用Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles)返回x86风格而不是所需的目录,除非我在64位模式下编译我的程序。出于好奇,我该怎么做才能避免这样做? 最佳答案

c# - 什么位置安装文件 - Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5

请耐心等待,我会尽量解释清楚。我开始了一个新项目(类库),目标是4.5而不是客户端配置文件4.5。我添加了一个引用“System.Runtime.Serialization”,属性表明它位于“C:\ProgramFiles(x86)\ReferenceAssemblies\Microsoft\Framework.NETFramework\v4.5\System.Runtime.Serialization”位置。dll”在我的电脑上,它可以通过使用msbuild的构建脚本正常编译。在使用teamcity的构建服务器上-它会提示errorCS0012:Thetype'System.Obje

c# - 使用 BlockingCollection 作为消息队列的响应式(Reactive)框架

我最近一直在使用ReactiveFramework做一些工作,到目前为止我非常喜欢它。我正在考虑用一些过滤的IObservables替换传统的轮询消息队列来清理我的服务器操作。在过去,我处理进入服务器的消息是这样的://StartspinningtheprocessmessageloopTask.Factory.StartNew(()=>{while(true){Commandcommand=m_CommandQueue.Take();ProcessMessage(command);}},TaskCreationOptions.LongRunning);这导致连续轮询线程将来自客户端的

c# - Reactive Extensions 看起来很慢——我做错了什么吗?

我正在为一个每秒需要处理数千条消息的交易平台项目评估Rx。现有平台有一个复杂的事件路由系统(多播委托(delegate))响应这些消息并进行大量后续处理。我查看了ReactiveExtensions的明显好处,但注意到它有点慢,通常慢100倍。我创建了单元测试来演示这一点,它运行一个简单的增量100万次,使用各种Rx风格和直接开箱即用的委托(delegate)“控制”测试。结果如下:Delegate-(1000000)-00:00:00.0410000Observable.Range()-(1000000)-00:00:04.8760000Subject.Subscribe()-New