小编App*_*rew的帖子

如何完成线程上下文切换?

据我所知,在进程上下文切换操作系统'备份'寄存器和指令指针(也是寄存器的一部分).

但是如果在进程内的线程之间切换,操作系统会备份完整的寄存器内存和堆栈吗?

我问这个的原因是要了解Java 的volatile关键字在单核处理器的情况下是否有任何意义.

java multithreading operating-system

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

(+)运算符在PL/SQL的where子句中意味着什么?

我有一个SQL查询类似于: -

Select Table1.attr1, Table1.attr2, Table2.attr3, Table2.attr4
From Tab1 Tabel1, Tab2 Tabel2
Where Tabel1.Attr = Tabel2.Attr (+)
Run Code Online (Sandbox Code Playgroud)

那么上面是什么意思呢?这是一个正确的外部联接吗?

sql oracle11g

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

如何在PHP中检查它是否是普通的字符串或二进制字符串?

可能重复:
如何在PHP中检查文件是ASCII还是二进制

我有一个函数,它接受图像文件的名称(即普通字符串),或者它可以直接接受图像字节作为二进制字符串.由返回file_get_contents.

我如何区分这两者?

php string

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

清除FLAG_TRANSLUCENT_STATUS标志后,为什么布局会搞乱?

我有一个Activity应用程序.它显示一个LoginFragment使状态和导航栏半透明的位置,以便它可以在其后面显示背景图像.但是,登录后,此片段将被另一个需要显示常用固态和导航栏的片段替换.因此,在LoginFragment删除之前,它会取消设置的标记,使条形不透明.

我面临的问题是,在我登录后,具有正常状态和导航栏的片段将其操作栏向下移位.如果我将屏幕旋转到横向然后再回到纵向以强制重新布局,则操作栏会快速回到正确的位置.

状态栏是半透明的.这很好. 状态栏是半透明的. 这很好.

在下一个屏幕上,操作栏向下移动.另外请注意,根据主题,状态栏是黑色的,应该是灰色的. 在下一个屏幕上,操作栏向下移动.

现在,如果我回到第一个屏幕,顶部半透明条形图很好,但整个内容向上移动,在下面留下一个空白的空白区域. 现在,如果我回到第一个屏幕,顶部半透明条形图很好,但整个内容向上移动,在下面留下一个空白的空白区域.

LoginFragment编程方式使条形半透明并恢复它们的代码: -

@Override
public void onResume() {
    super.onResume();
    if (hasTransparentStatusBar()) {
        setStatusBarTranslucent();
    }
}

@Override
public void onPause() {
    if (hasTransparentStatusBar()) {
        setStatusBarOpaque();
    }
    super.onPause();
}

protected boolean hasTransparentStatusBar() {
    return true;
}

protected void setStatusBarTranslucent() {
    if (Build.VERSION.SDK_INT >= 21) {
        Window window = getActivity().getWindow();
        window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS
                | WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS
                | WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
    }
}

protected void setStatusBarOpaque() {
    if (Build.VERSION.SDK_INT >= 21) {
        Window window = getActivity().getWindow();
        window.clearFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS
                | WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS …
Run Code Online (Sandbox Code Playgroud)

android android-layout android-fragments

11
推荐指数
2
解决办法
2632
查看次数

在Java中使用List或Map调用size()有多贵?

在Java中使用List或Map调用size()有多贵?或者如果频繁访问,最好将size()的值保存在变量中?

java

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

如何创建引用数据类型的表列的Oracle Type?

我试图type使用以下代码定义一个.

CREATE OR REPLACE TYPE MY_TYPE AS OBJECT (
    app_id        some_table_name.app_id%type
);
Run Code Online (Sandbox Code Playgroud)

如果我运行这个,我得到错误.

Error(4,32): PLS-00201: identifier 'some_table_name.app_id' must be declared
Run Code Online (Sandbox Code Playgroud)

这有什么问题?

sql oracle user-defined-types

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

Java锁:如何在synchronized块中完成Monitor锁的相等检查?

当你synchronized在一个对象上有几个块时(比如说)obj那么Java如何检查所有这些块obj是相同还是不同?

例如:

public static f() {
    synchronized ("xyz") {
        ...
    }
}
Run Code Online (Sandbox Code Playgroud)

如果f两个线程同时调用上述函数,它们会阻塞另一个吗?请注意,每个线程都将获得一个新的String对象实例.

为了检查这一点,我写了下面的测试代码,看起来确实上面的块可以工作,但是还有其他意想不到的结果.

public class Test {

    public static void main(String[] args){

        new Thread() {
            public void run() {
                //f1("A", new X());
                f1("A", "Str");
            }
        }.start();

        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }

        //f1("B", new X());
        f1("B", "Str");
    }

    public static void f1(String a, Object x) {
        synchronized(x) {
            System.out.println("f1: " + a);
            try {
                Thread.sleep(5000); …
Run Code Online (Sandbox Code Playgroud)

java concurrency locking synchronized

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

如何在Mac App Pkg安装程序中调试"安装检查失败"错误?

我正在测试我在Xcode中创建的应用程序.我将其存档,然后点击管理器上的"共享".从那里我选择了"Mac OSX App Store Package".

启动创建的pkg文件后,它会立即退出,并且"此计算机上无法安装MyApp"消息.系统日志只有以下日志.

07/02/12 10:56:01.793 AM Installer: Installation check failure.  . MyApp can’t be installed on this computer..
Run Code Online (Sandbox Code Playgroud)

我如何调试并找到问题?

macos installer xcode4.2 osx-lion

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

Django - 为什么我得到TemplateSyntaxError?

我在Pinax项目中添加了一个新的应用程序django_colorbox.由于某种原因,以下代码抛出TemplateSystaxError: Invalid block tag: 'include_colorbox', expected 'endblock' or 'endblock extra_head'.

{% block extra_head %} <!-- Defined in base html template -->
    {% include_colorbox %} <!-- Simple tag defined in django_colorbox -->
{% endblock %}
Run Code Online (Sandbox Code Playgroud)

差事简单标记的源代码是 - https://github.com/aljosa/django-colorbox/blob/master/django_colorbox/templatetags/colorbox_tags.py.

如果我可以在其中嵌入其他内置标记(例如blocktrans),block为什么不自定义简单标记?

django django-templates pinax

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

如何在DropWizard中维护用户会话?

我正在寻找一个持久的会话管理器,它将会话保存在可以与DropWizard一起使用的文件系统(如PHP)上.我看到有一个Environment.getSessionHandler(),但我看不到它的文档.

我可以自己写,但我希望能做一顿熟食.上面的SessionHandler会不会是我要找的?以及如何使用它?

session dropwizard

8
推荐指数
2
解决办法
7752
查看次数