小编Cir*_*all的帖子

最大限度地减少 GL 桌面应用程序上的鼠标输入延迟?

我认为这是一个常见问题,它与 OpenGL 管道以及它如何将渲染帧排队以供显示。

看起来如何

在 Android 上的这个视频中可以看到一个极端的例子。

最简单的桌面应用程序中存在鼠标延迟。如果您在 C++ 中运行我用 GLFW编写的小应用程序之一,您会发现它真的很明显:

#include <GL/glew.h>
#include <GLFW/glfw3.h>

#include <stdlib.h>
#include <stdio.h>

const float box_size = 20;

static const struct
{
    float x, y;
} vertices[4] =
{
    { -box_size, -box_size},
    {  box_size, -box_size},
    {  box_size,  box_size},
    { -box_size,  box_size}
};

static const char* vertex_shader_text =
"#version 110\n"
"attribute vec2 vPos;\n"
"varying vec3 color;\n"
"uniform vec2 vMouse;\n"
"uniform vec2 vWindow;\n"
"void main()\n"
"{\n"
"    gl_Position = vec4(vPos/vWindow+vMouse, …
Run Code Online (Sandbox Code Playgroud)

c c++ opengl glut glfw

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

如何运行没有输出注释的 Go 示例?

可测试的 Go 示例看起来很棒。

func ExampleReverse() {
    fmt.Println(stringutil.Reverse("hello"))
    // Output: olleh
}
Run Code Online (Sandbox Code Playgroud)

例如,上面的内容相当于断言的单元测试:

stringutil.Reverse("hello") == "olleh"
Run Code Online (Sandbox Code Playgroud)

根据golang 博客,我们可以编写没有输出注释的示例,但是go testgo test -run ExampleReverse命令仅编译示例而不运行它:

如果我们完全删除输出注释,则示例函数将被编译但不会执行。没有输出注释的示例对于演示无法作为单元测试运行的代码(例如访问网络的代码)非常有用,同时保证示例至少可以编译。

此类示例的输出虽然不可测试,但对于用户生成和阅读仍然有用。以及示例本身 - 对于在他们的计算机上运行很有用。

那么有没有一种方法或工具可以从终端运行 *_test.go 文件中的示例函数?

testing go

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

如何在匿名线程中声明异常?

InputStream in = ClientSocket.getInputStream();
new Thread()
{
    public void run() {
        while (true)
        {
            int i = in.read();
            handleInput(i);
        }
    }
}.start();
Run Code Online (Sandbox Code Playgroud)

我正在使用此代码在套接字上侦听新数据并获取:

FaceNetChat.java:37: unreported exception java.io.IOException; must be caught or declared to be thrown
                int i = in.read();
                               ^
Run Code Online (Sandbox Code Playgroud)

当我在" run() " 之后添加" throws IOException "时,我得到:

FaceNetChat.java:34: run() in  cannot implement run() in java.lang.Runnable; overridden method does not throw java.io.IOException
        public void run() throws IOException {
                    ^
Run Code Online (Sandbox Code Playgroud)

这可能很简单,但我很茫然.我怎么通过这个?

java sockets exception runnable

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

如何将谷歌应用引擎实例限制为一个?

我正在使用go语言,通过通道和锁而不是数据存储区在不同的线程/例程之间进行通信似乎是一种很好的做法.但是,如果有多个实例在运行,则两个实例之间似乎不可能.有没有办法让它不开第二个,即使有高流量?

google-app-engine instance go

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

标签 统计

go ×2

c ×1

c++ ×1

exception ×1

glfw ×1

glut ×1

google-app-engine ×1

instance ×1

java ×1

opengl ×1

runnable ×1

sockets ×1

testing ×1