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~~