草庐IT

缓冲池

全部标签

c# - MediaElement 网络视频不会停止缓冲

我正在使用MediaElement播放网络视频。当我离开页面时,我注意到任务管理器中我的应用程序仍在使用10%的网络,并且直到它完成视频下载后才停止。我尝试执行以下操作但没有成功。//openlink;mediaElement.Source=welcomeVideoURL;//whenIleavethepageOnNavigatedFrom()mediaElement.Stop();mediaElement.ClearValue(MediaElement.SourceProperty);mediaElement.Source=null;还尝试将源设置为虚拟链接,但仍然没有成功。我认为将

c# - 将 async/await 与 DataReader 一起使用? (没有中间缓冲区!)

我的目标很简单,我想进行异步I/O调用(使用异步等待)-但是:不使用DataFlow依赖项(likeinthisanswer)没有中间缓冲区(notlikethisanswer)Projector函数应作为参数发送。(notlikethisanswer)好的。目前这是我的代码,它的工作是从数据库中读取并将每一行投影到FuncpublicIEnumerableGetSomeData(stringsql,Funcprojector){using(SqlConnection_conn=newSqlConnection(@"DataSource=...")){using(SqlCommand_

c# - 如何清除 ReplaySubject 上的缓冲区?

如何清除ReplaySubject上的缓冲区?我需要定期清除缓冲区(在我的例子中作为一天结束的事件)以防止ReplaySubject不断增长并最终吃掉所有内存。理想情况下,我希望保持相同的ReplaySubject,因为客户端订阅仍然很好。 最佳答案 ReplaySubject不提供清除缓冲区的方法,但有几种重载以不同方式限制其缓冲区:项目保留的最大TimeSpan最大项目数上述的组合,只要满足其中一个条件就会掉落元素。一个可清除的ReplaySubject这是一个非常有趣的问题-我决定看看使用现有的主题和运算符(如这些非常坚固)。

c# - C#清空串口接收缓冲区

只是想知道我们如何在C#中清除我串口的接收缓冲区。似乎接收缓冲区中的数据一直在累积。例如传入的数据流为:[数据A]、[数据B]、[数据C]。我想要的数据只是[数据C]。我正在考虑这样做,当我收到[DataA]和[DataB]时,我会做一个清除缓冲区。仅当收到[DataC]时,我才继续处理。这是在C#中执行此操作的方法吗? 最佳答案 如果您使用的是System.IO.Ports.SerialPort,那么您可以使用以下两种方法:DiscardInBuffer()和DiscardOutBuffer()刷新缓冲区。如果您正在从串行端口读取

c# - 如何在 Silverlight 4 中使用 MediaStreamSource 实现播放非缓冲 WAV?

背景我正在尝试使用发现的MediaStreamSource实现在Silverlight4中流式传输波形文件here.问题是我想在文件还在缓冲的时候播放它,或者至少在它缓冲的时候给用户一些视觉反馈。现在我的代码看起来像这样:privatevoidbutton1_Click(objectsender,RoutedEventArgse){HttpWebRequestrequest=(HttpWebRequest)HttpWebRequest.Create(newUri(App.Current.Host.Source,"../test.wav"));//request.ContentType=

c# - 计算 WriteableBitmap.WritePixels 方法所需的缓冲区大小

如何计算WriteableBitmap.WritePixels方法所需的缓冲区大小?我正在使用带四个参数的重载,第一个是Int32Rect,第二个是包含颜色的RGBA数字的字节数组,第三个是步幅(这是我的可写位图的宽度乘以位每个像素除以8),最后是缓冲区(在Intellisense中称为偏移量)。我在以下代码中收到缓冲区大小不足运行时错误:byte[]colourData={0,0,0,0};varxCoordinate=1;varyCoordinate=1;varwidth=2;varheight=2;varrect=newInt32Rect(xCoordinate,yCoordin

c# - 在 C# 中缓冲字节数据

我的应用程序从TCP套接字读取字节并需要缓冲它们,以便我以后可以从中提取消息。由于TCP的性质,我可能会在一次读取中获得部分或多条消息,因此每次读取后我想检查缓冲区并提取尽可能多的完整消息。因此我想要一个允许我执行以下操作的类:向其附加任意字节[]数据在不使用内容的情况下检查内容,特别是检查内容的数量并搜索某个字节或多个字节是否存在提取并使用部分数据作为byte[],同时将其余数据留在那里以供将来读取我希望我想要的可以用.NET库中的1个或多个现有类来完成,但我不确定是哪些。System.IO.MemoryStream看起来接近我想要的,但是(a)不清楚它是否适合用作缓冲区(读取数据是

c# - List<MyClass> 对象缓冲区在哪里维护?它是在 RAM 上还是在 HDD 上?

我的问题可能听起来有点含糊。但我想知道的是List在哪里缓冲区保持不变。我有一个列表List我正在向其中添加来自无限循环的项目。但是Windows服务(我在其中创建列表)的RAM消耗从未超过17MB。事实上,即使我继续向列表中添加项目,它也徘徊在15-16MB之间。我试图对我的服务进行一些负载测试并遇到了这个问题。谁能告诉我它是否将数据转储到机器上的某个临时位置,并从那里选择它,因为我没有看到RAM消耗增加。我无限调用的方法是AddMessageToList()。classMainClass{ListmessageList=newList();privatevoidAddMessage

c# - 如何对面板进行双重缓冲?

我有一个带有轮盘赌轮盘的面板,我需要对面板进行双重缓冲,以使其停止闪烁。谁能帮帮我?编辑:是的,我试过了。panel1.doublebuffered不存在,只有this.doublebuffered。而且我不需要缓冲表单,只需要缓冲面板。 最佳答案 您需要派生自Panel或PictureBox。这取决于您选择启用缓冲的方式。如果你设置了this.DoubleBuffer标志那么你应该没问题。如果您手动更新样式,那么您必须自己在WM_PAINT中绘制表单。如果您真的有雄心壮志,您可以维护自己的后台缓冲区并将其绘制为位图。usingSy

c# - 无缓冲 StreamReader

有没有办法让StreamReader不做任何缓冲?我正在尝试处理可能是二进制或文本的进程的输出。输出看起来像一个HTTP响应,例如Content-type:application/whateverAnother-header:valuetextorbinarydatahere我想做的是使用StreamReader解析header,然后从其BaseStream或StreamReader读取以处理其余的内容。这基本上是我开始的内容:privatestaticreadonlyRegexHttpHeader=newRegex("([^:]+):*(.*)");privatevoidHandle