小编use*_*907的帖子

gnuplot:在y轴上绘制一个包含4列的文件

我有一个包含4个数字(最小值,最大值,平均值,标准推导值)的文件,我想用gnuplot绘制它.

样品:

24 31 29.0909 2.57451
12 31 27.2727 5.24129
14 31 26.1818 5.04197
22 31 27.7273 3.13603
22 31 28.1818 2.88627
Run Code Online (Sandbox Code Playgroud)

如果我有一个列有4个文件,那么我可以这样做:

gnuplot "file1.txt" with lines, "file2.txt" with lines, "file3.txt" with lines, "file4.txt" with lines
Run Code Online (Sandbox Code Playgroud)

它将绘制4条曲线.我不关心x轴,它应该只是一个恒定的增量.

我怎么能请情节?我似乎无法找到一种方法,有4条曲线,1个文件有4列,只有一个不断递增的x值.

谢谢.

gnuplot curves

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

Android Widget:previewImage大小

我在Android中有一个小部件,我正在设置一个previewImage.不幸的是,我在确定小部件的大小时遇到​​了问题:如果它太大,它会被裁剪到框架的底部.

我一直试图找到建议的尺寸,甚至更好,这个框架的像素尺寸显示预览图像,但我在文档中找不到它.

有谁请知道在哪里寻找这些信息?

谢谢.

android widget

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

Makefile:使用规则复制文件

我正在尝试使用我的规则复制文件,但我的规则不会被触发:

BUILDDIR = build
COPY_FILES = code/xml/schema/schema.xsd config.txt

all: $(BUILDDIR) $(COPY_FILES) copy

$(BUILDDIR):
    mkdir -p $@

$(COPY_FILES):
    cp -f $@ $(BUILDDIR)

copy:
    cp -f $(COPY_FILES) $(BUILDDIR)
Run Code Online (Sandbox Code Playgroud)

我试图使用$(COPY_FILES)但它没有被触发,虽然$(BUILDDIR)和副本被触发.我不确定我的Makefile有什么问题.如果可能的话,我想让$(COPY_FILES)规则起作用(并删除副本).有谁知道吗?

makefile

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

Makefile:从目录编译到另一个目录

我试图用makefile编译一堆.cpp位于文件src/code/*.cpp,然后编译各*.obuild/,最后生成可执行文件那些build/为好.

我已经阅读了一些我尝试使用的答案,但遇到了我不理解的问题.

CC = g++
FLAGS = -g -c

SOURCEDIR = /src/code
BUILDDIR = build

EXECUTABLE = DesktopSpecificController
SOURCES = $(wildcard src/code/*.cpp)
OBJECTS = $(patsubst src/code/*.cpp,build/%.o,$(SOURCES))

all: dir $(BUILDDIR)/$(EXECUTABLE)

dir:
    mkdir -p $(BUILDDIR)

$(BUILDDIR)/$(EXECUTABLE): $(OBJECTS)
    $(CC) $^ -o $@

$(OBJECTS): $(BUILDDIR)/%.o : $(SOURCEDIR)/%.cpp
    $(CC) $(FLAGS) $< -o $@

clean:
    rm -f $(BUILDDIR)/*o $(BUILDDIR)/$(EXECUTABLE)
Run Code Online (Sandbox Code Playgroud)

我得到以下错误,我不知道为什么:

Makefile:19: target `src/code/main.cpp' doesn't match the target pattern
Run Code Online (Sandbox Code Playgroud)

我还看到,在尝试构建EXECUTABLE时,它没有使用.o文件,所以看来我的规则在这里是错误的.

makefile

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

使用setRequestedOrientation了解何时完成旋转

我正在尝试编写一个.apk来测量旋转Android设备屏幕所需的时间(循环几次旋转).

我使用的调用setRequestedOrientation()来reoriente在4个位置的屏幕(PORTRAIT,LANDSCAPE,REVERSE_PORTRAITREVERSE_LANDSCAPE).

我的问题是我无法分辨轮换结束的时间.我尝试了一些解决方案,但每个解决方案都存在问题.

  1. 我试着用onConfigurationChanged().问题是当方向改变从传感器发生时,此方法被触发,而不是从setRequestedOrientation().其实,我调用setRequestedOrientation()FULL_SENSOR参数onConfigurationChanged我以前的呼吁后工作setRequestedOrientation().
  2. 我尝试setRequestedOrientation()通过添加while循环来检查屏幕方向(以度为单位)来进行"阻塞".android.view.Display.getRotation()之前我打过电话setRequestedOrientation()并用while循环阻塞,直到它发生了变化.不幸的是,它也不起作用.它在重新显示UI之前返回.
  3. 我试图通过等待onCreate()再次调用来跟随活动的生命周期,以假设旋转已完成.以前,我正在循环,直到我的计数器达到一个值,在每次迭代调用setRequestedOrientation().在这种情况下,我的while循环变为if语句,并且我假设onCreate每次都会调用该函数,但是onCreate()在几次迭代后不会调用它.用户界面似乎也没有重新绘制.
  4. 我在网上找到的最终解决方案(但还没有完全实现)就是立即使用该waitForIdleSync()方法setRequestedOrientation().waitForIdleSync()是Instrumentation类的一部分,我认为这只是用于测试而不是标准的.apk.

任何想法都会非常受欢迎.我将衷心感谢您的帮助.

android rotation

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

Android:具有不同alpha值的嵌套线性布局

我有一个矩形的LinearLayout,它有一些边距,一些圆角和一个0.3的alpha值.在这个布局中,我有4种不同的布局,因为我在不同的位置显示不同的图像.

我的问题是虽然主要布局是0.3,但我希望我的孩子完全可见,或者不受它的父母alpha影响,我想知道我怎么能请那样做呢?我尝试在子布局上设置alpha = 1,但它不起作用.将它设置为0确实会使子布局消失,所以看起来我可以减少到0.3以下,但不能超过父级.这是一个错误还是我做错了?

谢谢.

layout android alpha opacity

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

Windows:孩子死亡时的通知(崩溃或正常退出)

我试图弄清楚子进程(在 Windows 上使用 CreateProcess() 创建)何时崩溃或正常退出。我正在将 Unix 代码移植到 Windows 并且对此有很多问题。

我在 Unix 上使用 SIGCHLD,如下所示:

struct sigaction act;
bzero(&act, sizeof(act));
act.sa_handler = sig_handler;
act.sa_flags = SA_RESTART;
sigaction(SIGCHLD, &act, 0);

void sig_handler(int signal)
{
    int pid, status;

    if (signal == SIGCHLD) {
        while ((pid = waitpid(-1, &status, WNOHANG)) > 0) {
            // Remove pid from a data structure
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我正在研究创建一个调用 WaitForMultipleObjects 的新线程的解决方案,但问题是可以随时创建新进程,我认为在创建新进程时我不能中断 WaitForMultipleObjects。我不想为每个具有 WaitOnSingleObject 的进程生成一个新线程(如果必须的话,我更愿意引入一个线程)。

请问在这种情况下最好的解决方案是什么?

windows process

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

Posix 线程:向在 while 循环中运行的线程发出信号

我有一个非常简单的线程:它将保持活动的数据包发送到服务器,然后休眠。我希望我的主线程向线程发出退出信号,但是每当我调用 pthread_kill() 时,它似乎都会使我的进程崩溃。

我试图在我的 while 循环开始时调用 sigpending() 后跟 sigismember(),但我认为它正在崩溃,因为它不知道任何处理信号的句柄(我在之前使用 sigaddset() while 循环),如下:

void* foo(void* arg)
{
    sigset_t set, isSignal;

    sigemptyset(&set);
    if (sigaddset(&set, SIGUSR1) == -1) { /* ... */ }

    while (1) {
        if (sigpending(&isSignal) != 0) { /* .. */ }
        else if (sigismember(&isSignal, SIGUSR1)) {
            break;
        }

        sendKeepAlive();
        sleep(SECONDS);
    }
    return NULL;
}
Run Code Online (Sandbox Code Playgroud)

似乎 pthread_kill(pth, SIGUSR1); 使程序死亡。请问发送信号的正确方法是什么?我应该改用 pthread_sigmask() 吗?

unix multithreading posix signals pthreads

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