• 应用程序重起自身等几则技巧


    应用程序重起自身等几则技巧

    转载时请注明出处和作者联系方式:http://blog.csdn.net/absurd

    作者联系方式:Li XianJing <xianjimli at hotmail dot com>

    更新时间:2006-12-19 

    1.         应用程序重起自身。

    以前开发一个服务器软件,当通过客户端工具修改某些设置后,服务器要重新重动自己。当时竟想不出什么好办法,只好开了两个进程,子进程为工作进程,父进程为监视进程,子进程退出时,父进程再重起子进程。今天在busybox里发现一种最简单的重起方法:

    int main(int argc, char* argv[])

    {

        sleep(2);

     

        printf("%s %s/n", argv[0], argv[1]);

        fflush(stdout);

     

        execv(argv[0], argv);

     

        return 0;

    }

     

    2.         printf打印long long整数。

    几天前为了用printf打印出long long的整数,不得不去查看glibc的源代码,这里记个笔记吧。

    #include <stdio.h>

     

    int main(int argc, char argv[])

    {

        long long val = 0;

     

        sscanf("0x1122334455667788", "0x%Lx", &val);

        printf("val = 0x%Lx/n", val);

     

        sscanf("1122334455667788", "%Ld", &val);

        printf("val = %Ld/n", val);

     

        return 0;

    }

     

    3.         Win32的电源管理函数。

    前段时间在研究linux下的电源管理,本来想看看win32下的电源管理,一直没有时间。今天群里有网友问Win32下如何让系统休眠,在MSDN里查了一下,找到了一个电源管理函数,记在这里吧,有时间再看看相关资料。

     

    BOOL SetSystemPowerState(

      BOOL fSuspend,  // system state

      BOOL fForce     // forced suspension option

    );

      Windows NT/2000: Requires Windows 2000.

      Windows 95/98: Requires Windows 95 or later.

      Header: Declared in Winbase.h; include Windows.h.

      Library: Use Kernel32.lib.

     

    ~~end~~

     
  • 相关阅读:
    python yield from (一)
    python yield: send, close, throw
    python I/O多路复用 使用http完成http请求
    python I/O复用
    python 进程间通信
    mac 使用express -e ./
    Object.keys使用整理
    MacBook pro管理员变成普通用户无法解锁问题
    MAC应用无法打开或文件损坏的处理方法
    Redis "MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk"问题的解决
  • 原文地址:https://www.cnblogs.com/zhangyunlin/p/6167793.html
Copyright © 2020-2023  润新知