小编Mar*_* A.的帖子

Google AppEngine后端的<max-concurrent-requests>的理论最大值

有谁知道AppEngine后端实例的<max-concurrent-requests>设置是否有最大值?即,如果我将<max-concurrent-requests>设置为千亿亿,那么后端是否能够接受和服务请求,直到它完全耗尽内存或CPU为止?或者是否有其他配额或外部限制?(我在考虑TCP端口号,线程句柄,......?)

concurrency google-app-engine backend limit

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

使用额外的接口实现在Java中实例化匿名内部类

假设我有以下两个类/接口定义:

public abstract class FooClass {
    public abstract void doFoo();
}
Run Code Online (Sandbox Code Playgroud)

public interface BarInterface {
    public void doBar();
}
Run Code Online (Sandbox Code Playgroud)

如果我想创建一个扩展/实现两者的匿名内部类,我是否需要这样做:

public abstract class BothClass extends FooClass implements BarInterface {}

...

new BothClass() {
    public void doFoo() {
        System.out.println("Fooooooooo!!!!");
    }

    public void doBar() {
        System.out.println("Baaaaaaaar!!!!");
    }
}.doBar();
Run Code Online (Sandbox Code Playgroud)

或者是否有一个允许我不定义的捷径BothClass?这样的事情,也许:

new (FooClass implements BarInterface)() {
    public void doFoo() {
        System.out.println("Fooooooooo!!!!");
    }

    public void doBar() {
        System.out.println("Baaaaaaaar!!!!");
    }
}.doBar();
Run Code Online (Sandbox Code Playgroud)

(这个想法给了我几个错误,这些都没有帮助)

java anonymous-inner-class subclassing interface-implementation

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

Java中是否有“本地接口”之类的东西?

Java 允许我定义本地抽象类,就像在这个例子中一样:

public class Foo {

    public void foo() {
        abstract class Bar {          // Bar is a local class in foo() ...
            abstract void bar();
        }

        new Bar() {                   // ... and can be anonymously instantiated
            void bar() {
                System.out.println("Bar!");
            }
        }.bar();
    }
}
Run Code Online (Sandbox Code Playgroud)

出于某种原因,当我尝试定义“本地接口”而不是本地类时,如下所示:

public class Foo {

    public void foo() {
        interface Bar {           // Bar was supposed to be a local interface...
            void bar();
        }

        new Bar() {               // ... to be anonymously instantiated
            void bar() …
Run Code Online (Sandbox Code Playgroud)

java interface local-class

4
推荐指数
2
解决办法
1431
查看次数

AppEngine BlobStore是否支持上传的分块传输编码(状态411:需要长度)?

关于AppEngine的一个非常基本的问题,我很难找到文档:

BlobStore是否支持Chunked Transfer Encoding上传?

我正在使用Java中的HttpURLConnection对象和setChunkedStreamingMode使用以下代码在multipart/form-data类型请求中上传文件来设置连接:

HttpURLConnection cxn = (HttpURLConnection) new URL(uploadUrl).openConnection();
cxn.setRequestMethod("POST");
cxn.setChunkedStreamingMode(9999);
cxn.setRequestProperty("Content-Type", "multipart/form-data; boundary=-");
cxn.setDoOutput(true);
cxn.connect();
Run Code Online (Sandbox Code Playgroud)

开发服务器通过状态411:需要长度来回答我的请求.这是否意味着不支持分块传输模式,或者我是否错误地初始化连接?生产服务器在此处的行为是否不同?这种行为是在生成上传网址时指定最大上传大小的结果吗?

编辑:

如果我只是注释掉这一行cxn.setChunkedStreamingMode(9999);,一切都运行得很好,但我宁愿不这样做,所以在发送请求之前我不必在内存中缓冲数百MB ...

java upload google-app-engine chunked-encoding blobstore

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

将"守护进程"-status传播到Java中的所有子线程

如果我有一个Thread对象,我可以调用setDaemon(true)它来标记该线程不应该阻止应用程序关闭,如果所有其他非守护程序线程已终止.

是否有可能使这种行为自动渗透到所有子线程?即如果我有一个被标记为守护程序线程的线程,是否有某种方法可以强制执行此线程生成的所有线程也自动标记为守护程序线程?

java multithreading daemon

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

代码优化以避免分支

我刚刚看到这篇文章:计算没有分支的两个整数的最小值或最大值

它始于"[o] n一些罕见的机器,其中分支是昂贵的......".

我曾经认为分支总是很昂贵,因为它经常迫使处理器清除并重新启动它的执行管道(例如,为什么处理排序数组比未排序数组更快?).

这给我留下了几个问题:

  • 这篇文章的作者是否错了?或者这篇文章可能是在分支出现问题之前编写的(我找不到日期).
  • 现代处理器是否有办法在(x < y) ? x : y没有性能下降的情况下完成最小的分支?
  • 或者所有现代编译器是否只是自动执行此hack?具体来说,Java做什么?特别是因为它的Math.min(...)功能就是那个三元语句......

java performance minimum branch-prediction

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

让Eclipse程序在Eclipse中运行以显示在VisualVM中

我正在尝试在Eclipse 7开发的Windows 7 64位上使用Java VisualVM,遇到以下问题:

我有一个在Eclipse中运行的Java应用程序,但是当我打开jVisualVM时,在Local下的Applications中显示的唯一项目是VisualVM本身.

是否可以显示我的Java应用程序?我是否需要使用某些命令行参数启动它以允许VisualVM连接?我是否需要在Eclipse之外运行它?

java jvisualvm

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

在Windows下运行RoboVM

是否可以在Windows下运行RoboVM,或者我是否需要在某处提供MacOS?

如果没有,是否有一个替代(也创建as-close-to-native-as-possible输出)在Windows下运行?

robovm

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

在Android TextView中真正顶对齐文本

我试图在Android中显示TextView,使视图中的文本顶部对齐:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    // Create container layout
    FrameLayout layout = new FrameLayout(this);

    // Create text label
    TextView label = new TextView(this);
    label.setTextSize(TypedValue.COMPLEX_UNIT_PX, 25);     // 25 pixels tall
    label.setGravity(Gravity.TOP + Gravity.CENTER);        // Align text top-center
    label.setPadding(0, 0, 0, 0);                          // No padding
    Rect bounds = new Rect();
    label.getPaint().getTextBounds("gdyl!", 0, 5, bounds); // Measure height
    label.setText("good day, world! "+bounds.top+" to "+bounds.bottom);
    label.setTextColor      (0xFF000000);                  // Black text
    label.setBackgroundColor(0xFF00FFFF);                  // Blue background

    // Position text label
    FrameLayout.LayoutParams …
Run Code Online (Sandbox Code Playgroud)

java android vertical-alignment textview

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

解码十六进制数字的最快方法

我正在寻找获得十六进制ASCII字符的十进制值的最快方法,即保证出现在以下字符串中的一个(它可以是小写或大写,但没有空格):

0123456789ABCDEFabcdef
Run Code Online (Sandbox Code Playgroud)

到目前为止,我提出的最好的公式是:

char c = 'd';  // or any other hex character
int value = (((c & 0x1F) + 9) % 25;
Run Code Online (Sandbox Code Playgroud)

请注意,它是无分支的,但它确实包含昂贵的模运算.

我可以做得更好吗?

algorithm hex

3
推荐指数
2
解决办法
396
查看次数