问题标签 [recycle]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3018 浏览

android - Android:处理 ListView 回收

我正在开发一个使用 Listview Activity 的音板应用程序。但是由于 Android 的 Listview 具有回收其列表视图的属性,因此我对所选文本视图所做的更改会在滚动列表视图时反映在所有页面中。我不希望这种情况发生。那么我该如何正确处理呢。如果有人可以帮助我提供代码片段,那将非常有帮助,我感谢您的努力。谢谢!

编辑:希望这会更好地解释

我的类扩展了 ListActivity 并且列表视图如下

现在,当用户单击任何文本视图时,我需要更改该文本视图的图像。我通过以下代码实现了这一点。

0 投票
1 回答
1288 浏览

asp.net - 应用程序池回收时奇怪的内存增加

我想描述一下我在分析生产中的 asp.net 应用程序时注意到的奇怪问题,并就以下问题征求一些建议或意见。

应用程序通常运行大约 80-90 MB 的内存占用。这似乎很稳定,因为到目前为止还没有检测到内存泄漏 - 随着时间的推移内存使用量没有轻微增加。然而,当应用程序池回收时会出现问题(我正在使用共享托管并根据日志判断它发生在应用程序空闲 20 分钟或每 ~ 30 小时 - 类似的情况)。问题是在回收的一段时间内,已用内存几乎翻了一番——它达到了大约 160-170 MB,没有任何解释。这是令人困惑的,因为通常声称回收应该清除内存和所有其他资源 - 至少我是这样理解的。系统将这个内存量保持 7-8 小时,然后内存使用量再次下降到通常的 90-100 MB 水平,没有明显的原因(至少我不知道)。每时每刻,应用程序似乎运行良好 - 网站可用性没有明显的延迟或麻烦 - 对用户来说一切似乎都很好,到目前为止没有任何投诉。查看随时间变化的内存消耗图 - 它看起来几乎像一个阶跃函数。

重要的是我无法在我的测试环境中重现这种行为。有时,我收到供应商管理员的通知,说我的应用程序使用的资源超出了允许的范围,这真的让我很烦恼。

那么,我想知道 - 是否存在应用程序池回收不会释放所有内存资源的情况?有什么我应该关注的建议或指导吗?我不是这方面的专家,但我一直在阅读诸如重叠回收、回收序列化问题以及更多问题等内容......有什么想法吗?类似的经历?

谢谢

0 投票
2 回答
256 浏览

asp.net - 回收应用 Mod_Mono 2.8

我有一个运行 Mono 2.8.1 和 mod_mono 2.8 和 apache2 的 CentOS 5.x 服务器。

每次我通过 ftp 从 Visual Studio 2010 将站点部署到我的服务器并导航到该站点时,我都会收到 404 not found 错误页面。

其他子域(虚拟主机)中的站点不受影响。

使用 /etc/init.d/httpd restart 重新启动 httpd 可以解决问题,并且我可以再次查看我的 ASP 站点。显然重启整个 httpd 进程是不够的。

我的猜测是,这类似于 IIS 中的应用程序域。有没有办法在 mod_mono 中“回收”和应用程序域?我可以将其设置为在部署时发生吗?

0 投票
1 回答
887 浏览

android - Android:Gridview 正在缓存过时的项目,如何确保在重新加载页面时为每个显示项目调用 getview?

语境:

我有一个包含 6 个选项卡的主要活动,每个选项卡都包含一个包含 30 多个图像的网格视图,并且随时显示大​​约 8 个图像(每个网格视图都是可缩放的)。

有了这么多图像,我实现了一个简单的缓存系统,即只缓存其中最新的 25 个,如果需要显示新图像并且不在缓存中,我将从 /data/date 目录中解码该图像并覆盖缓存中最旧的条目。在覆盖最旧的条目之前,我将调用 Bitmap.recycle() 。

问题:

在某些时候,在显示超过 25 张图像后,旧图像将开始被回收。如果我现在要导航回其图像不再在缓存中的选项卡之一,则 GetView 方法将注意再次加载图片。问题在于 Gridview 中的第一个项目将调用 GetView,图像的其余部分将永远不会被调用,并且 Gridview 将尝试显示已被回收的缓存图像。

有什么建议吗?在这种情况下强制获取视图或缓存图像的智能方式?

非常感激

谢谢

0 投票
1 回答
3105 浏览

.net - WPF ListBox VirtualizingStackPanel.VirtualizationMode="Recycling" 导致相同的列表项始终出现

我正在使用 WPF/.NET 4,当我将 VirtualizingStackPanel.VirtualizationMode="Recycling" 属性添加到我的 ListBoxes 时,它会导致滚动时一遍又一遍地重复相同的列表项。例如,假设我有一个包含 100 个项目的 ListBox,一次可见 10 个。当 ListBox 首次加载时,我看到项目 1 - 10,但是当我开始向下滚动以查看剩余项目 11 - 100 时,项目 1 - 10 在我向下滚动时一遍又一遍地重复,所以我永远无法查看项目11 - 100. 如果我将 Recycling 改回 Standard,那么一切正常,但滚动速度非常慢(我的 ListItems 相当复杂,其中包含多个图像、文本字段和按钮)。当回收打开时,滚动速度非常快,但我只能查看项目 1 - 10。关于什么的任何想法 错了或如何解决?提前致谢。

0 投票
1 回答
1930 浏览

web - IIS 7.5:对网站的初始请求永远不会被加载

当我第一次浏览我的网站时,互联网一直在旋转/加载。如果我两秒钟后尝试再次加载它,一切正常。

就像它在“睡觉”一样。

我认为这一定与“回收”有关。我已将“空闲超时”设置为 0,将回收“常规时间间隔”设置为 0。

在我浏览我的网站之前,我先看一下“工作进程”,它说应用程序池进程正在运行。

知道为什么我的网站“睡着了”吗?

谢谢!魔精

0 投票
1 回答
9643 浏览

asp.net - 我应该将 ASP.NET 应用程序池设置为自动回收吗?

我有许多 ASP.NET (4.0) Web 应用程序似乎在每个请求期间泄漏(少量)内存。它是如此之小,以至于对于大多数用例来说,它不会在几周甚至几个月内成为问题。我通常会尝试关闭由应用程序管理的任何连接,避免使用状态变量(或我的单例的实例变量)等。

我的问题是 - 这是 ASP.NET 应用程序的正常行为吗?在空闲 20 分钟后,我关闭了回收应用程序池的默认 (IIS 7) 行为。我这样做是因为应用程序需要几分钟来构建其内部缓存,并且我想避免对用户体验产生负面影响(并让他们在发出请求时等待应用程序启动)。

我知道这可以通过序列化缓存或加速缓存生成过程来缓解,但我的问题更多地与它的原理有关:我个人认为依赖 IIS 自动回收功能作为一种创可贴的方法。我错了吗?我只是因为应用程序的内存使用量与可用内存量相比不够高而没有看到垃圾收集器在工作吗?还是我应该更深入地研究内存问题?

任何见解将不胜感激。

0 投票
4 回答
2039 浏览

iphone - 暂时阻止一个 UITableViewCell 被回收

我的 UITableViewCells 可以接受数据输入。在一个单元格中工作时,用户想要向上滚动,检查另一个单元格中的内容,然后返回到第一个单元格并继续数据输入是非常自然的。

问题是这会经常导致 UITableView 回收单元格,这会对我的程序造成严重破坏。

有什么办法可以暂时告诉iOS不要回收电池吗?

一旦数据输入完成,如果它被回收,我就可以了。

我应该补充一点,数据输入使用自定义键盘。因此,第一响应者状态不是问题。

0 投票
2 回答
6361 浏览

wcf - 回收 IIS7 应用程序池是否会杀死任何当前正在执行的请求?

回收 IIS7 应用程序池是否会杀死任何当前正在执行的请求?或者它是否等待所有请求完成(如排水停止)?

我不希望回收规则导致我的 WCF 站点出现间歇性错误。

谢谢

0 投票
2 回答
4085 浏览

android - Android - 由于回收问题,无法检查自定义列表视图中的所有复选框?

我有一个带有图像视图、文本视图和复选框的自定义列表视图适配器。而且我的主布局中还有一个按钮和一个复选框(不在列表视图中)。

我想要的是在我检查主布局的复选框时一次检查所有这些列表视图复选框。

我将这些复选框的状态保存在布尔类型的数组列表中,因此我可以在逐个检查时检查这些复选框,但到目前为止,我还没有找到一种方法可以一次检查所有这些复选框,我可以在我的主布局的复选框的 OnCheckedChanged 事件。

我尝试了一些技术,但由于 ListView 的回收过程,它只检查那些当前可见的项目,当我向下滚动到我的列表时,上述所有项目都设置为未选中,并且一些随机项目被选中。

如何克服这个回收问题以及如何一次检查所有这些复选框????有什么建议吗?解决方案?主意?

这是我的自定义适配器的代码:-

正如你在这个适配器的末尾看到的那样,我创建了一个函数 setItemChecked() 但这个函数也是回收过程的受害者,因为它只检查可见项目,并且当我向下滚动时它开始出现异常行为。

任何帮助都会很棒。

谢谢。