问题标签 [shared-resource]
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.
c++ - 类共享资源 - 正确的解决方案?
这不是作业,只是关于我的代码的问题(我正在学习 C++)。
我有该类的多个实例,Renderer
它们都使用相同的资源,即由 SDL 加载的 BMP。这是管理班级共享资源的正确方法吗?如果没有,什么是好的?如果是,有更好的吗?
渲染器.hpp
渲染器.cpp
python - 在两个进程之间共享资源
我想知道在 Python 中的两个进程之间共享队列(资源)所遵循的最佳实践。这是每个进程正在执行的操作:
Process_1:不断从流式 API 获取数据(以 json 格式)
Process_2:是一个守护进程(类似于 Sander Marechal 的代码),它将数据(一次一个)提交到数据库中
因此,Process_1(或生产者)将一个数据单元放到该共享资源上,而Process_2(或消费者)将轮询该共享资源以获取任何新的数据单元,并将它们存储在数据库中(如果有)。
我想到了一些选择:
- 使用pickle(缺点:酸洗和去酸洗的额外开销)
- 通过
stdout
Process_1 向stdin
Process_2 传递数据(缺点:无,但不确定如何使用守护进程来实现) - 使用库
pool
中的对象multiprocessing
(缺点:不确定如何将其编码为一个进程是守护进程)
我想要一个在这方面实践的最佳解决方案,带有一些代码:)。谢谢。
java - java同步方法入口点线程是否足够安全?
我有一个 Singleton 类处理一种在 Hashmap 中具有不同对象的缓存。(键的格式直接链接到存储在映射中的对象类型 - 因此映射是 )
地图上可能有三种不同的操作:添加、获取、删除。
我使用公共入口点方法(无密集访问)保护了对地图的访问:
笔记:
地图是私人的。方法 addDataToMyMap()、getDataFromMyMap() 和 removeDataFromMyMap() 是私有的。只有入口点方法是公共的,除了类本身的静态 getInstance() 之外别无其他。
您是否确认并发访问地图是线程安全的,因为除了通过该方法之外没有其他方法可以使用地图?
如果地图是安全的,我想这个原则可以应用于任何其他类型的共享资源。
非常感谢您的回答。
大卫
c# - 如何设置资源锁定的到期时间?
我的程序将使用共享资源,因此需要锁定该资源。
当启动此资源上的处理任务时,它将获得对该资源的锁定。当它完成时,它将释放锁。
为了应对处理任务期间的崩溃和电源故障,这将使锁永远保持打开状态,锁应该有一个到期时间。
如果执行涉及资源的处理任务所花费的时间通常在 0 到 5 秒之间,我认为到期时间应该在 10 分钟甚至 1 小时左右。
那么我应该如何满足处理任务实际上比到期时间更长的异常情况呢?
任务本身的到期时间是否应该小于锁的到期时间?
wpf - 如何在 ListBox 项实例之间共享资源?
我们有一个自定义渲染的 ListBox,它维护一个基于其宽度的 StreamGeometry 对象的实例。然后,该控件需要将该 StreamGeometry 实例与其所有项目共享以进行渲染。
我们能想到的唯一方法是将 StreamGeometry 实例放在 ListBox 的 ViewModel 中,然后在各个 DataTemplates 中绑定到它,考虑到这是一个仅限视图的东西,因此不应该在 ViewModel 中全部。
注意:我们也可以通过 ListBox(或 ListBox 的子类)上的附加属性来存储它,但我们仍然需要绑定一个仅查看的东西,这对我来说似乎是错误的。
有什么想法吗?
c# - Android和iOS跨平台字符串资源(MonoTouch & MonoDroid)
我正忙于使用 Xamarin 单声道库的跨平台移动应用程序,我遇到了以下情况......
我的 monodroid 项目 (strings.xml) 中有一堆字符串资源,这些资源正被我的布局和 C# 代码使用。
我想做的是将这些字符串资源移动到共享项目中的文件中,以便 iOS、Android 和 Windows 手机都能够使用它们。实现这一目标的最佳方法是什么?
*目前我正在使用包含非 UI 字符串的 Resource.resx 文件。然后我在 android(monodroid) 项目中有 strings.xml 文件来满足 UI 资源字符串的需求。
请记住以下几点:
- 所有平台都必须使用相同的文件。
- 我需要 android 布局也使用相同的资源。(目前是 strings.xml 文件)
- 它最好是一个文件。
有什么意见吗?
java - 您如何创建和稍后访问应用程序级资源?
编辑:我正在尝试为 Web 应用程序的所有会话创建一个共享数据库连接池。另一篇文章说创建 servlet 上下文对象的最佳方法是让 init 侦听器创建它。然而,我不清楚如何使这个对象可供我的 servlet 使用。
c# - PerformanceCounter 创建需要很长时间
我正在研究电荷平衡系统,因此我需要知道每台机器的电荷。PerformanceCounter 似乎是要走的路,但创建第一个需要 38 到 60 秒。然而,每个后续的新计数器或“NextValue”调用几乎都是即时的。
这是我正在使用的代码:
研究
PerformanceCounter 在连接远程服务器时非常慢
创建一个新的 System.Diagnostics.PerformanceCounter 非常慢
我尝试使用其他构造函数并给出精确的“MachineName”,但它并没有改变任何东西。
http://craigandera.blogspot.fr/2005/06/performancecounter-constructor-horribly_21.html
根据这两个线程,问题似乎与性能计数器是共享资源有关。但是我不明白我该如何解决。
在管理员中运行 Visual Studio 将第一次创建从 38 秒“加速”到 26 秒,因此它也不能解决问题。
谢谢你的帮助。
java - 在 Java Web 应用程序中共享资源
我有一个 Java 网络应用程序。随着时间的推移,它已经演变成真正应该是两个应用程序。有一些像 CSS 和 Javacript 文件的东西,尽管它们都不需要。有没有办法让它们共享,所以我不需要复制这些文件。
这是一些附加信息:
Java 1.7 使用在 Glassfish 4 中运行的 JSF