小编Pio*_*zmo的帖子

插入USB热点后,简单的Java程序慢了100倍

我有以下Java程序:

class Main {
    public static void main(String[] args) throws java.io.IOException {
        long start = System.nanoTime();
        java.io.File.createTempFile("java_test", ".txt").delete();
        System.out.println((System.nanoTime() - start ) / 1e9);
    }
}
Run Code Online (Sandbox Code Playgroud)

通常,执行需要大约63毫秒:

$ java Main
0.06308555
Run Code Online (Sandbox Code Playgroud)

但是,一旦我将Android手机作为USB热点连接,它需要更长的时间.根据机器的不同,从3到40秒:

$ java Main
4.263285528
Run Code Online (Sandbox Code Playgroud)

奇怪的是,这里没有任何东西实际通过网络传输 - 插入的网络适配器应该无关紧要.

我做了一个回溯,看起来大部分时间花在NetworkInterface.getAll方法上:

"main" #1 prio=5 os_prio=0 tid=0x00000000023ae000 nid=0x142c runnable [0x000000000268d000]
   java.lang.Thread.State: RUNNABLE
        at java.net.NetworkInterface.getAll(Native Method)
        at java.net.NetworkInterface.getNetworkInterfaces(Unknown Source)
        at sun.security.provider.SeedGenerator.addNetworkAdapterInfo(Unknown Source)
        at sun.security.provider.SeedGenerator.access$000(Unknown Source)
        at sun.security.provider.SeedGenerator$1.run(Unknown Source)
        at sun.security.provider.SeedGenerator$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.security.provider.SeedGenerator.getSystemEntropy(Unknown Source)
        at sun.security.provider.SecureRandom$SeederHolder.<clinit>(Unknown Source)
        at …
Run Code Online (Sandbox Code Playgroud)

java windows performance networking windows-7

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

SDL Tridion中的关键字路径

有人可以就如何做到这一点给出一些想法吗?这可能非常简单和基础,但我无法弄清楚这一点.

这是我的要求.

我有一个带有子关键字B的类别A,B有另一个子关键字C.

我希望在我的组件模板中获取所选关键字的确切路径,例如,如果用户选择关键字C,我需要带有路径的值,如A\B\C而不仅仅是C.但是Tridion总是给我值作为C而不是A\B\C.组件模式使用"树"视图来选择关键字.

我应该编写Dreamweaver自定义函数来处理这个吗?或者tridion为此提供了一些处理程序?

任何帮助将受到高度赞赏.谢谢!

谢谢,KK

tridion tridion2009 tridion-2011

6
推荐指数
2
解决办法
576
查看次数

添加Unicode字符后,文本更改高度

我有带有文本内容的HTML元素。在CSS中,字体设置为sans-serif。文本通过JavaScript更新。有时仅包含ASCII字符,但有时包含“?” 字符。请参见以下代码段:

var text = document.getElementById("text");
var chars = "A?";
var i = 0;
function update() {
  i=1-i;
  text.innerText = "char: " + chars[i];
  setTimeout(update, 500);
}
update();
Run Code Online (Sandbox Code Playgroud)
div {
  font-family: sans-serif;
  background-color: lightgrey;
}
Run Code Online (Sandbox Code Playgroud)
<div id="text" />
Run Code Online (Sandbox Code Playgroud)

这在IE11中工作正常,但在Chrome中,元素“摆动”:

文字元素更改大小

似乎发生这种情况是因为使用了不同的字体来呈现“?” 字符:

Arial—Local file(5 glyphs)
Segoe UI Symbol—Local file(1 glyph)
Run Code Online (Sandbox Code Playgroud)

有没有一种简单的方法可以稳定整个元素的高度和文本的静态部分的位置?

一种方法似乎是对整个元素使用“ Segoe UI符号”-但我更喜欢为常规文本使用不同的字体。

html css fonts google-chrome

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

如何延迟分配零内存?

据我了解,我必须在calloc分配零内存的,和malloc可以按需分配内存的之间进行选择。

是否有结合了这两个属性的功能?也许直接打电话给mmap

如果有可能,为什么calloc不这样做呢?

c linux memory-management

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

在c程序中使用glib库

我想在我的c程序中使用哈希表.

我代码:

...
#include <glib.h>

void main(int argc, char **argv)
{
  GHashTable *g_hash_table;
  ...  
  g_hash_table = g_hash_table_new(g_int_hash, g_int_equal);
...
}
Run Code Online (Sandbox Code Playgroud)

然后我编译:

$ gcc -I/usr/include/glib-2.0
-I/usr/lib/i386-linux-gnu/glib-2.0/include
-lglib-2.0 -o test test.c
Run Code Online (Sandbox Code Playgroud)

或相同的命令:

$ gcc `pkg-config --cflags --libs glib-2.0` -o test test.c
Run Code Online (Sandbox Code Playgroud)

但无论如何,结果是:

test.c: underfined reference to `g_int_equal`
test.c: underfined reference to `g_int_hash` 
test.c: underfined reference to `g_hash_table_new`
collect2: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)

为什么我不能编译我的程序?我做错了包含glib库吗?

c linux glib

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

在eval()中导入Math命名空间

我有一个存储在字符串中的函数源,例如:

var source="(function(){return Math.sin(x);})";
Run Code Online (Sandbox Code Playgroud)

我想把它传递给eval()后来计算它的值:

var f=eval(source);
var v=f();
Run Code Online (Sandbox Code Playgroud)

它运作良好.但是,我希望能够使用MathMath.前缀的函数.所以我能做到:

var source="(function(){return sin(x);})";
Run Code Online (Sandbox Code Playgroud)

有没有一种简单的方法来实现这一目标?我已经使用了WebGL,因此它不必与旧版浏览器兼容.

附加信息:

我知道这eval()很糟糕.我正在编写函数grapher,source是由将要绘制的用户输入的函数.这也是为什么要摆脱Math.前缀的原因.

我知道它不会很漂亮,但我不打算编写自己的解析器.也许有更好的方法?

javascript

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