我有两个线程,一个读取流并从其内容生成数据对象.
然后我必须将它们传递给第二个线程,将它们写入数据库.
我想分开这两个任务(这就是为什么我采用两个线程),因为流和数据库上的I/O-Performance有所不同.在某些情况下,流很快,有时,db有一些滞后.
所以我想在它们之间放一些(非常简单!)数据存储.
我的第一个想法是FILO解决方案,必须是线程安全的并且应该是快速的(没有花哨的东西,只是放置和拉动).订单无关紧要.在某些时候,存储中可能存在大约100,000个条目(在与db一起大约一秒钟之后就是这种情况).
每个对象占用空间小,<1kb.
你会给我什么推荐?
我正在编写一个应用程序,用户可以升级使用游戏币支付的组件.按下"升级"按钮后,会向服务器发送ajax请求并升级组件.之后,我发出另一个ajax请求来检索新的组件页面.但是,当数据更新时,不会再次检查ng-disabled,因此升级按钮在不应该的情况下仍然可以点击.重新加载页面或路由修复此问题.但重新加载页面并不是一个好的用户体验.
我正在做这个项目来学习Angularjs的方法,所以如果我的设置有什么问题或者我做了什么,请告诉我!
我尝试包含所有相关代码,如果缺少某些内容,您可以在此链接下使用用户和密码"test" 查看它.
对于领先地位,在machine-overview.html该按钮的调用upgradeComponent在controller.js控制器MachineOverviewCtrl发出Ajax请求和上成功更新$scope.user和$scope.machine,改变的数据被反映在图(ng-repeat),但该按键ng-disabled不评估和保持旧状态.
我究竟做错了什么?我如何强制进行评估或以Angularjs喜欢的方式进行更新?
编辑:
@ jack.the.ripper的答案是缺少这一点,即有多个按钮,每个按钮重复一次,但这些按钮只是不评估它们的ng-disable指令.

//编辑
<!DOCTYPE html>
<html lang="de" ng-app="hacksApp">
<head>
<!--ommited includes (angularjs, bootstrap etc)-->
</head>
<body ng-controller="hacksUserCtrl">
<!--ommited navbar-->
<div ng-view></div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
<!--ommited divs-->
<table class="table table-bordered">
<!--ommited thead-->
<tbody>
<tr ng-repeat="component in machine | object2Array | orderBy:'ComponentID'"><!--converting objects to arrays, issue appears with and without filter-->
<!--ommited other irrelevant td-->
<td> …Run Code Online (Sandbox Code Playgroud) 我有一组唯一的键值对,键和值都是字符串.对的数量非常巨大,找到某个字符串的值非常时间关键.
这些对是预先计算的,并且是针对某个程序给出的.所以我可以写一个包含以下内容的方法:
public String getValue(String key)
{
//repeat for every pair
if(key.equals("abc"))
{
return "def";
}
}
Run Code Online (Sandbox Code Playgroud)
但我说的是超过250,000对,也许排序它们会更快......
我有一个包含该getValue()方法的类,可以使用它的构造函数,但没有连接到任何数据库/文件系统等.因此每个对都必须在类中定义.
你有什么想法比一系列if语句更快吗?也许使用排序图来获得对的预分类.也许通过反序列化已经创建的地图来改善构造函数时间?
我希望你的答案包含你的方法的基本代码示例,我会用相应的时间来评论答案它需要一组对!
时间范围:一个构造函数调用和20 getValue()个1000毫秒调用.
键的大小为256,值大小<16
我正进入(状态
List<Map<String,Object>> listMap = [
{employee=17, fromdate=2010-08-01 00:00:00.0, full_inc=25572.0000},
{employee=17, fromdate=2010-09-01 00:00:00.0, full_inc=28347.0000},
{employee=17, fromdate=2010-10-01 00:00:00.0, full_inc=37471.0000},
{employee=17, fromdate=2011-02-01 00:00:00.0, full_inc=47033.0000},
{employee=17, fromdate=2011-07-01 00:00:00.0, full_inc=50592.0000}
]
Run Code Online (Sandbox Code Playgroud)
谁能帮我如何在java中根据full_inc从高到低对这个地图列表进行排序