好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

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

http://blog.csdn.net/absurd 作者联系方式: Li XianJing xianjimli at hotmail dot com 更新时间: 2006-12-19 1. 应用程序重起自身。 以前开发一个服务器软件,当通过客户端工具修改某些设置后,服务器要重新重动自己。当时竟想不出什么好办法,只好开了

http://blog.csdn.net/absurd

作者联系方式: Li XianJing

更新时间: 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~~

查看更多关于应用程序重起自身等几则技巧的详细内容...

  阅读:40次