问题标签 [shared-data]
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.
java - java并发共享数据与Runnable vs Callable和本地数据
第一种情况:假设您有很多任务都返回某种结果,现在我们称之为“结果”,这些都必须存储在数组列表中。有两种选择:
1)在main方法中创建一个arraylist,并使用可访问共享列表的runnables和一个同步的add方法
2)在main方法中创建一个arraylist,并使用callable执行任务并返回结果,让main方法将Result添加到它的列表中。
两者之间是否存在任何性能差异,因为可运行对象需要同步访问,但可调用对象不需要?
然后,对于第二种情况:现在假设每个任务生成一个“小”数组列表,假设每个任务少于 10 个项目。这再次提供了两个选项:
1) main 和 runnables 中的一个 arraylist 可以访问共享列表,该列表在生成时添加结果项。
2) main 和 callables> 中有一个 arrayList,每个都有自己的本地 arraylist,用于存储结果,直到任务完成,然后在 main 中使用 addAll 来添加找到的结果。
和以前一样的问题,性能差异是什么?
为了清楚起见,速度(一些同步问题等)和内存方面的性能(由于本地小数组列表,可调用对象是否使用更多内存,或者这个小到可以忽略不计)?
sql-server - 为什么从 SQL Server Reporting Services 运行 SSRS 报表与使用“预览”选项卡运行时生成的数据不同?
我有一个运行我想要的数据的报告 - 从预览选项卡,或者在 VS 2010 中使用 F5 运行时。但是当我将报告(.rdl 文件)上传到 SQL Server Reporting Services 并运行更新后从那里报告,它仍然显示旧的(受限)数据。
我错过了一个步骤 - 除了从项目上传 .rdl 文件之外,还需要做些什么吗?它确实告诉我数据源是错误的,但是一旦我指定了正确的数据源,它就会顺利运行(除了丢失的数据)。
我通过向标签添加虚假添加确保 SQL Server Reporting Services 真正使用更新的报告,果然,当我运行报告时,我确实看到了,所以更新的报告到达那里。
我还验证了设计时和运行时报告(相同的文件,但复制到不同的位置)都使用相同的数据源:项目中的 SharedDataSource 引用,当我选择 View > Report Data > Data Sources 时看到的是在 SQL Server Reporting Services 中使用相同,我通过选择报表名称上的黄色右下箭头来设置数据源,然后选择“管理”>“数据源”>“共享数据源”>“浏览”>“主页”>“数据” Sources > 并选择与项目中所见同名的共享数据源。最后,我在 SQL Server Reporting Services 中选择了 OK > Apply,但只生成了一部分数据。
为什么会这样?我该怎么做才能检索所有数据?
更新
为了澄清会发生什么,在回答 yelxe 的评论时:
当我在 SSRS 中删除以前版本的报告并上传一个“新”文件(.rdl 文件 - 刚刚删除的新版本报告),然后单击报告链接尝试运行它,我得到,“报表服务器无法处理报表或共享数据集。报表服务器或 SharePoint 站点的共享数据源“CPSData”无效。浏览到服务器或站点并选择一个共享数据源。(rsInvalidDataSourceReference)"
因此,我单击报告右侧的黄色向下箭头并选择管理。
从那里,我选择 Data Sources > A shared data source > Browse > Home/Data Sources/CPSData(“CPSData”与项目中选择的共享数据源相同)> OK > Apply,然后运行报表。
这就是我这样做的地方:
它运行,但返回到报告的数据是我从 IDE (VS 2010) 运行它时得到的数据的一个子集。
更新 2
至于从 SSRS 运行报告时存在的数据,它们是相同的 - IOW,超集和数据子集共有的行相同;只是子集中缺少许多行。超集中存在的数据似乎没有任何“奇怪”之处——它不是 0 或负数,也不是任何特殊或引人注目的东西。
更新 3
要更详细地回复 Eric 的评论,报告的“订阅”、“缓存刷新选项”和“报告历史记录”页面显示“此视图中没有可显示的项目。单击帮助以获取有关此页面的更多信息。 ”
报告的处理选项页面显示
...并且报告的“快照选项”页面显示
更新 4
我注意到我的数据源的名称与我的主数据集的名称相同(它们都是“CPSData”)。数据集名称只是一个标签(可以命名为“duckbilledplatypus”或其他名称),但我仍然想知道这个数据集的混淆/误导性名称是否有问题。因此,我将数据集的名称更改为更合理的名称(我将其重命名为“VPM_V_RockBottom”,因为存储过程名为“sp_ViewPriceMatrix_Variance_RockBottom”)。
不过,这并没有什么区别。我在 SSRS 中替换了新版本的报告(.rdl 文件),重新运行了报告,但仍然(不)看到丢失的数据。
使用相同的参数(日期范围和单位名称),这是我从项目的“预览”选项卡运行时看到的:
...这是在 SSRS 中运行时:
因此,从 VS 2010 运行时,“Hass”* Avocados 显示 18 个成员(应该如此),而从 SSRS 运行时仅显示 3 个成员。在这两种情况/地方,“Asparagus Standard 11/1#”显示了 18 个成员,因为它们应该。
为什么会有差异,我该如何纠正这种异常情况?
- (原文应该是“Haas”,而不是“Hass”(德语中的“恨”字))
angular - 如何在Angular 2中的两个组件之间传递数据
我正在寻找将数据传递给另一个组件的解决方案,并类似地访问其他组件中另一个组件的方法(两者都是并行组件)。
例如,我有两个组件home.ts
和map.ts
. 我将一些数据输入map.ts
并需要将其传递进来home.ts
,反之亦然。
ibm-cloud - IBM Bluemix CF 应用程序的挂载卷
IBM Containers on Bluemix 支持安装卷和跨容器使用。有什么方法可以让我们在 Bluemix CF 应用程序中拥有类似的共享卷?
angular - 角度 4 最佳实践:通过服务加载全局数据并存储
我想构建一个 Angular 4 应用程序,我可以在其中从数据库中搜索用户并使用我在不同路线上找到的人的信息。我目前的问题是,如果我通过服务加载一些数据,更改路线并返回,数据会再次加载。
我的服务:
我的组件:
当我运行应用程序时,我得到 console.log 'NOT found' 并且数据被加载,正如它应该的那样,但是当我改变路线并切换回来时,它再次被加载,这是不正确的。
我希望你能帮助我提供一个完整的工作示例,所以我可以看看代码。也许我错过了一些东西。
如果您需要更多信息,请随时询问。
c++ - C++ 设计:如何设置两个共享一组变量的类?
这可能是一个愚蠢的问题,但是对共享一组变量的 2 个类进行编程的最佳方法是什么?
- A 类和 B 类都需要访问 int x 和 int y。
- 如果 A 类更改 x 或 y,则更改应反映在 B 类中
我的想法:A 类和 B 类可以继承 C 类(其中包含变量 x,y) - 但这会为 A,B 创建一个 c 的实例。- 我只需要 x 和 y 的一个实例
也许我需要朋友类或静态变量?
c# - c# 中的 Windows 窗体应用程序用于在线/离线数据更新
问候。
我正在开发一个项目,该项目将使用位于服务器上的 REST API,例如 www.this-server.com,并且将有一个使用 C# 的 Windows 窗体应用程序,让我们将此应用程序称为 X。
这个 X 将安装在全球不同位置的多台机器上,他们将使用该应用程序。假设有 90 个站点或机器安装了 X,但互联网仅连接到其中的 85 个站点。
我想要的是剩下的 5 个站不应该停止工作,我的意思是 CRUD 操作在应用程序 X 的本地数据库中离线进行。
一旦有可用的网络,剩余的 5 个站点应将其更改同步到 www.this-server.com 上的主 API,并同时获取服务器上发生的任何更改。
我知道它需要这样的东西,即所谓的智能客户端:https ://www.codeproject.com/Articles/1134703/Net-application-that-works-online-and-offline-Sma
但我遇到的问题是,假设 API 中的几个表中有一个自动增量字段,这些字段将如何生成并且会有任何冲突。
这样的东西:https ://dba.stackexchange.com/questions/104700/sync-many-client-database-to-one-central-database
我的意思是这件事甚至是可能的,如果应用程序 X 有单个实例同时运行,它可能是可能的,但在我的情况下,有 90 个 API 同时使用。
任何帮助、教导、建议将不胜感激。问候贾扬特
PS:我是一个新手开发者,还在学习,所以有很多东西要看,不要对我生气:-D。
asp.net-mvc - 所有视图的asp.net mvc5全局变量
我在 DB 中有 fb、twitter 和 youtube 网址,以及大约 30 个其他应用程序级变量。
目前我在模板中的每个动作 bcz 中查询它我在页脚中有社交链接,如果错过了会抛出错误。
我希望对全球某处的所有操作执行上述行。谷歌搜索,很多人建议放入会话,但我认为这不应该放入会话变量中,因为它的大小可能会很长。
我所有的控制器都继承自Controller
as
公共类 HomeController : 控制器{}
请帮忙。
更新 我在家庭控制器中创建了构造函数,如下所示
这减少了在每个动作中调用它,但我仍然必须在所有控制器中输入相同的内容,这可以吗?以及我们如何为所有控制器全局编写这个
angular - Angular 中的通用组件,具有特定于多个上下文的创建/删除 API
我会有一个通用的评论组件。该组件具有复杂的图形含义,我需要重用具有相同数据模型的两个不同上下文。我想通过一个例子来解释。我有两个不同的 API 用于向 A 和 B 上下文中的列表添加新评论。所以我有:
带有评论列表和添加(或删除)按钮的组件。
BComponent 带有一个注释列表和一个用于添加(或删除)的按钮。
两者都使用相同的模型 (IComment) 和图形细节,但用于创建/删除的 API 不同。
到目前为止,我使用事件发射器处理了这个用例,并将 API 调用委托给了属于 A 和 B 组件的父组件。
但是,如果 API 由服务器返回验证错误,我希望在注释的组件中处理它以显示错误图形详细信息。我该怎么做?这个用例的更好实践?