标签: core

我如何摆脱Core中的`let`?

我有一个在内部循环中经常调用的函数.它看起来像这样:

import qualified Data.Vector.Storable as SV

newtype Timedelta = Timedelta Double

cklsLogDens :: SV.Vector Double -> Timedelta -> Double -> Double -> Double
cklsLogDens p (Timedelta dt) x0 x1 = if si <= 0 then -1e50 else c - 0.5*((x1-mu)/sd)^2 
  where
    al  = p `SV.unsafeIndex` 0
    be  = p `SV.unsafeIndex` 1
    si  = p `SV.unsafeIndex` 2
    xi  = p `SV.unsafeIndex` 3
    sdt = sqrt dt
    mu  = x0 + (al + be*x0)*dt
    sd  = si * (x0 ** xi) * …
Run Code Online (Sandbox Code Playgroud)

optimization haskell core

10
推荐指数
2
解决办法
329
查看次数

使用System.identityHashCode(obj) - 什么时候?为什么?

何时合理的时间来做第4行而不是第3行?或者它们是完全冗余的调用?

1  Object o1 = new Object();

2  

3  int hcObj = o1.hashCode();

4  int hcSys = System.identityHashCode(o1);
Run Code Online (Sandbox Code Playgroud)

java core hashcode

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

while(true)ServerSocket Listen的效率

我想知道一个典型的while(true)ServerSocket监听循环是否需要整个核心等待并接受客户端连接(即使实现runnable和使用Thread .start())

我正在实现一种分布式计算集群,每台计算机都需要它拥有的每个核心用于计算.主节点需要与这些计算机通信(调用修改算法功能的静态方法).

我需要使用套接字的原因是跨平台/跨语言功能.在某些情况下,PHP将调用这些java静态方法.

我使用了一个java profiler(YourKit),我可以看到我正在运行的ServerSocket监听线程,它永远不会睡觉而且它总是在运行.有没有更好的方法来做我想要的?或者,性能影响是否可以忽略不计?

如果你能想到一个更好的方法,请随时提供任何建议(我已尝试过RMI,但不支持跨语言.

感谢大家

java sockets performance multithreading core

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

Object类如何实现clone()方法

在一本关于Core Java的书中,我发现了这个摘录:

想想Object类可以实现克隆的方式.它根本不了解对象,因此它只能进行逐个字段的复制.如果对象中的所有数据字段都是数字或其他基本类型,则复制字段就可以了.但是,如果对象包含对子对象的引用,则复制该字段会为您提供对子对象的另一个引用,因此原始对象和克隆对象仍然共享一些信息.

读完之后我很想知道 How is the clone method originally implemented in Object Class?

让我困扰的是:如何在一个方法Object类的子类对象的领域克隆做出场,当它并不了解这门课吗?

java clone class core object

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

java中引用变量的大小是多少

java中引用变量的大小是多少?我很确定它不会依赖于架构或是吗?它与C中的指针概念有什么相似之处吗?我尝试但无法得到任何令人信服的答案.

java core

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

jmap崩溃,"无法获取类数据"

有一个Java核心转储; 运行jmap:

/usr/java/jdk1.8.0_25/bin/jmap -dump:format=b,file=dump.hprof  /usr/bin/java core.31497 
Run Code Online (Sandbox Code Playgroud)

给出以下例外:

Attaching to core core.31497 from executable /usr/bin/java, please wait...
...
JVM version is 25.25-b02
...
Exception in thread "main" java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:483)
    at sun.tools.jmap.JMap.runTool(JMap.java:201)
    at sun.tools.jmap.JMap.main(JMap.java:130)
Caused by: sun.jvm.hotspot.utilities.AssertionFailure: can not get class data for         sun/nio/ch/ThreadPool$$Lambda$10x00000007c0214428
    at sun.jvm.hotspot.utilities.Assert.that(Assert.java:32)
    at sun.jvm.hotspot.utilities.HeapHprofBinWriter.writeInstance(HeapHprofBinWriter.java:803)
    ...
    at sun.jvm.hotspot.tools.Tool.start(Tool.java:223)
    at sun.jvm.hotspot.tools.Tool.execute(Tool.java:118)
    at sun.jvm.hotspot.tools.HeapDumper.main(HeapDumper.java:83)
Run Code Online (Sandbox Code Playgroud)

有什么想法吗?

java linux core jmap

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

c#Environment.ProcessorCount并不总是返回完整数量的逻辑处理器,为什么?

在我的机器上,Windows 7 - Enterprise 1 x Intel Xeon E5-1660 0 @ 3.30Ghz(激活超线程的6核/ CPU),Environment.ProcessorCount返回12,这是准确的.

在具有2 x Intel Xeon E5-2697 v3 @ 2.60GHz的Windows Server 2012上(启动了超线程的14核/ CPU(我认为因为任务管理器显示:2个插槽,28个核心,56个逻辑处理器)),Environment.ProcessorCount返回因为2x14x2 = 56,我们认为这是错误的.

为什么在Windows Server 2012 c#方法Environment.ProcessorCount没有返回正确数量的逻辑处理器?

作为附加信息,环境变量如下:NUMBER_OF_PROCESSORS = 28

任务管理器

更新2015-05-26:

在我的另一个问题中有更多关于此相关错误的详细信息/原因:无法在C#应用程序中为我的线程使用多个处理器组.主要是我认为C#只使用一个处理器组.有什么问题,在我们的服务器上,有2个处理器组,尽管只有56个逻辑处理器.但是这个惠普客户咨询解释了为什么我们的服务器BIOS配置导致错误的窗口.

c# cpu core hyperthreading server

9
推荐指数
2
解决办法
6767
查看次数

MVC Core-UseIIS和UseIISIntegration有什么区别

查看这些代码,它们具有相同的注释,表明它们执行相同的操作:

/// <summary>
/// Configures the port and base path the server should listen on when 
/// running behind AspNetCoreModule. The app will also be configured 
/// to capture startup errors.
/// </summary>
Run Code Online (Sandbox Code Playgroud)

UseIISMicrosoft.AspNetCore.Server.IIS包中,而UseIISIntegration在中Microsoft.AspNetCore.Server.IISIntegration

两者有什么区别?什么时候需要使用一个与另一个?(或两者皆有?)

更新: github上有一个类似的问题,但是那里没有有用的答案:https : //github.com/aspnet/AspNetCore/issues/6197

model-view-controller core asp.net-core-mvc

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

clojure.core.cache只是不能使用自己的例子

我刚刚将clojure.core.cache 0.6.1添加到我的项目中,做了一个lein deps,遵循这里非常简短明了的例子:https://github.com/clojure/core.cache它只是扁平化不起作用.

例:

$lein repl
REPL started; server listening on localhost port 20513
user=> (require '[clojure.core.cache :as cache])
nil
user=> (def fifoc (cache/fifo-cache-factory {}))
#'user/fifoc
user=> (cache/has? fifoc :foo)
false
user=> (cache/miss fifoc :foo "bar")
{:foo "bar"}
user=> (cache/has? fifoc :foo)
false
Run Code Online (Sandbox Code Playgroud)

这里出了什么问题?我完全忽视了这一点吗?我已经尝试了其他缓存后端所有相同的结果.尝试用不同的键,不同的值,不同的命名空间,不同的别名 - nada.运行测试给我这个:

$ lein test clojure.core.cache.tests

Testing clojure.core.cache.tests

Ran 13 tests containing 273 assertions.
0 failures, 0 errors.
Run Code Online (Sandbox Code Playgroud)

这使得这更加神秘.我查看了测试,虽然他们:导入缓存后端并以java方式实例化它们(miss(BasicCache.{})...),我也尝试过,这对我来说也是以完全相同的方式失败了.

在我实施一个有效的方法之前的任何帮助?

caching core clojure leiningen

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

intel core i5是否属于i686或x86_64系列

intel core i5处理器属于哪个系列?x86_64或i686.

我正在安装MinGW.我知道它会自动选择i686.但是i686都是32位吗?而intel i5实际上是一款64位处理器.这引发了对它属于哪个家族的怀疑?

谢谢

64-bit 32-bit intel core

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