小编Mah*_*hdi的帖子

具有本机代码的多核Java程序

我在Java程序中使用本机C++库.编写Java程序是为了利用多核系统,但它不能扩展:最佳速度是大约6个核心,即添加更多核心会降低它的速度.我的测试表明,对本机代码本身的调用会导致问题,所以我想确保不同的线程访问本机库的不同实例,从而删除并行任务之间的任何隐藏(内存)依赖关系.换句话说,而不是静态块

static {
    System.loadLibrary("theNativeLib");
}
Run Code Online (Sandbox Code Playgroud)

我希望动态地为每个线程加载库的多个实例.主要问题是,这是否可行.然后怎么做!

注意: - 我在Java 7 fork/join以及Scala/akka中实现了.所以对每个平台的任何帮助表示赞赏. - 并行任务完全独立.实际上,每个任务可能会创建一些新任务然后终止; 没有进一步的依赖

这是fork/join样式的测试程序,其中processNative基本上是一堆本机调用:

class Repeater extends RecursiveTask<Long> {
    final int n;
    final processor mol;

    public Repeater(final int m, final processor o) {
        n=m;
        mol = o;
    }
    @Override
    protected Long compute() {
        processNatively(mol);
        final List<RecursiveTask<Long>> tasks = new ArrayList<>();
        for (int i=n; i<9; i++) {
            tasks.add(new Repeater(n+1,mol));
        }

        long count = 1;
        for(final RecursiveTask<Long> task : invokeAll(tasks)) { 
            count += task.join(); 
        }
        return count;
    }
} …
Run Code Online (Sandbox Code Playgroud)

java parallel-processing scalability multicore native-code

7
推荐指数
1
解决办法
751
查看次数

在Scala/akka中记录到文件:ClassNotFoundException:akka.event.slf4j.Slf4jLoggingFilter

我搜索了不少但找不到合适的解决方案.有人可以帮帮我吗?

akka {
     event-handlers = ["akka.event.slf4j.Slf4jEventHandler"]
     loggers = ["akka.event.slf4j.Slf4jLogger"]
     loglevel = "DEBUG"
     logging-filter = "akka.event.slf4j.Slf4jLoggingFilter"
     stdout-loglevel = "WARNING"
     actor {
       debug {
         receive = on
         lifecycle = off
       }
     }
}
Run Code Online (Sandbox Code Playgroud)

我已经添加了以下内容,build.sbt希望其中一个解决问题:

libraryDependencies ++= Seq (
  "com.typesafe.akka" %% "akka-actor" % "2.4.1",   // akka actors
  "ch.qos.logback" % "logback-classic" % "1.1.3",  //logback, in order to log to file
  "com.typesafe.scala-logging" % "scala-logging-slf4j_2.11" % "2.1.2",
  "com.typesafe.akka" % "akka-slf4j_2.11" % "2.4.1",   // needed for logback to work
  // and my other dependencies
) …
Run Code Online (Sandbox Code Playgroud)

logging scala logback akka

7
推荐指数
1
解决办法
6663
查看次数

scala/akka性能与java 7 fork/join

我是Scala/Akka的新手,虽然我非常熟悉基于actor的建模概念.我试图并行化现有代码以获得更好的性能,我有两个版本:一个在Scala/Akka中,一个在Java 7的ForkJoinPool中.

我期待基于演员的方法应该更快,但结果却相反.Scala/Akka的时间为20秒,而Java fork/join则为17秒.

我想知道akka本质上是否较慢?或者可能是因为我在我的两个实现中使用普通Java编写的现有代码中的类?

java parallel-processing performance fork-join akka

5
推荐指数
1
解决办法
2512
查看次数

使用工具提示反应引导表

我正在使用反应引导表来显示存储在info数组中的一些数据。

<BootstrapTable data={info} striped={true} hover={true} search={true} condensed={true} selectRow={selectRowProp(onRowSelect, info, selected)}>
    <TableHeaderColumn isKey={true} dataField="name"> Name </TableHeaderColumn>
    <TableHeaderColumn dataField="class"> Class </TableHeaderColumn>
    <TableHeaderColumn dataFormat={myStyle} dataField="price"> Price </TableHeaderColumn>
</BootstrapTable>
Run Code Online (Sandbox Code Playgroud)

某些行可能有一个额外的属性oldPrice,我想将其显示为显示价格的工具提示。我怎样才能做到这一点?

javascript css tooltip react-bootstrap-table

5
推荐指数
1
解决办法
4537
查看次数

5
推荐指数
0
解决办法
212
查看次数

Scala案例类在receive方法中不匹配(在akka actor中)

我有这样的事情:

class ProbeActor extends Actor {
  case class Probe(messageKey: String)
  def receiveProbe: Receive = {
    case Probe(probeKey) => println("Good probe: "+probeKey)
    case x => println("Bad probe: "+ x)
  }
  final override def receive = receiveProbe orElse receiveOther
  def receiveOther: Receive = {
    case _ => println("Other")
  }
}
Run Code Online (Sandbox Code Playgroud)

我称之为:

class Prober extends ProbeActor {
  val definite = ActorSystem("ProbeTest").actorOf(Props[ProbeActor], name = "probed")
  implicit val timeout = Timeout(5 second)
  val future = definite ? Probe("key")
}
Run Code Online (Sandbox Code Playgroud)

我希望文本"Good probe: key"应该打印,但我明白了"Bad …

scala pattern-matching case-class akka

4
推荐指数
1
解决办法
508
查看次数

关于Cassandra复合材料色谱柱的文档

当我试图找到有关复合列的信息时,我找不到比2013更新的东西(特别是这个是Google的顶级链接,在讨论使用复合列时没有CQL代码,显然使用的是非常旧的Java驱动程序).复合列是否仍然存在于较新版本的Cassandra中?我的意思是,除了有一个复合键.

我是Cassandra的新手并且实际上想要了解它们是否适合我的用例,如下所述.考虑一个表4双值列,也就是说w,x,y,z.这些数据来自3个来源,比如说收集a,bc.每个源可能缺少部分数据,因此表的每一行最多有12个数字.而不是创建3个包含4列的表来存储来自不同源的值,然后合并表以填充缺少的字段,我想要有一个表将4个数据列建模为4 super columnscomposite columns.喜欢的东西a:w,b:w,c:w,a:x,b:x,c:x,a:y,b:y,c:y,a:z,b:z,c:z.此外,每一行都有一个时间戳作为主键.

我想知道的是,我是否可以进行这样的查询SELECT *:w AS w FROM MyTable,对于每一行,x从任何可用的源返回一个值(与哪个源无关).虽然我还希望保留从特定来源检索数据的功能,例如SELECT a:w FROM MyTable.

----------------------------------------------------------------
| key | a:w | b:w | c:w | a:x | b:x | c:x | a:y …
Run Code Online (Sandbox Code Playgroud)

cql cassandra datastax

4
推荐指数
1
解决办法
1157
查看次数

当超过命名空间配额时,如何清空hadoop上的垃圾?

我想开始一个 hadoop 流作业,但它失败了,抱怨: 15/05/19 23:17:34 ERROR streaming.StreamJob: Error Launching job : The NameSpace quota (directories and files) of directory /user/myname is exceeded: quota=1000000 file count=1000001

我尝试删除一些文件,使用hdfs dfs -rm -r -f files该文件报告文件已移至垃圾箱。然后我尝试了hdfs dfs -expunge,然后我回来了:

15/05/19 23:12:32 INFO fs.TrashPolicyDefault: Namenode trash configuration: Deletion interval = 0 minutes, Emptier interval = 0 minutes. 15/05/19 23:12:33 INFO fs.TrashPolicyDefault: Created trash checkpoint: /user/myname/.Trash/150519231233

但我仍然得到原来的错误。我应该怎么办?

linux command-line hadoop hdfs apache-spark

3
推荐指数
1
解决办法
1万
查看次数

避免JSP中的代码重复

我正在使用JSP和Spring框架.在页面中,我想在相应的select元素旁边有五个按钮.我的问题是如何避免重复代码呢?

以下是我对一个按钮选择组合的代码:

       <tr>
            <td>
                <sf:label path="inputFile">Select a file:</sf:label>
            </td>
            <td>
                <sf:select path="inputFile" cssStyle="width: 250px;" onchange="enableLocal(this.selectedIndex,'matButton')">
                    <sf:option value="Upload a Local File" />
                    <sf:option value=" --- Available already: --- " disabled="true" />
                    <sf:options items="${flowData.availableInputs}" />
                </sf:select>
            </td>
            <td>
                <input id="matButton" type="file" name="inputFile"/>
            </td>
        </tr>
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,名称inputFilematButton将被视为参数,即其他按钮将具有不同的名称.

我想到的是类似于具有两个参数的函数,它们将生成上述代码.可能吗?

code-reuse jsp code-duplication

2
推荐指数
1
解决办法
1221
查看次数

Scala枚举:选择一些值作为类型

考虑WeekDays枚举:

object WeekDay extends Enumeration {
    type WeekDay = Value
    val Mon, Tue, Wed, Thu, Fri, Sat, Sun = Value
}
Run Code Online (Sandbox Code Playgroud)

现在我想定义一个只能在周末作为值的变量,例如:

val weekend: WeekDay.Sat | WeekDay.Sun
Run Code Online (Sandbox Code Playgroud)

但显然这不是正确的Scala语法.我有什么方法可以做或近似这个?

types enumeration scala

1
推荐指数
1
解决办法
93
查看次数