易截截图软件、单文件、免安装、纯绿色、仅160KB

linux 时间&定时器 介绍

1.时间表示
  在程序当中,我们经常要输出系统当前的时间,比如我们使用date命令的输出结果.这个时候我们可以使用下面两个函数:
  #include
  time_t time(time_t *tloc);
  char *ctime(const time_t *clock);
  time函数返回从1970年1月1日0点以来的秒数.存储在time_t结构之中.不过这个函数的返回值对于我们来说没有什么实际意义.这个时候我们使用第二个函数将秒数转化为字符串. 这个函数的返回类型是固定的:一个可能值为.Thu Dec7 14:58:59 2000 这个字符串的长度是固定的为26.
2.时间的测量
  有时候我们要计算程序执行的时间.比如我们要对算法进行时间分析.这个时候可以使用下面这个函数. #include
  int gettimeofday(struct timeval *tv,struct timezone *tz);
  strut timeval {
  long tv_sec; /* 秒数 */
  long tv_usec; /* 微秒数 */
  };
  gettimeofday将时间保存在结构tv之中.tz一般我们使用NULL来代替.
3.计时器的使用
3.1、alarm
-------------------------------------------
    如果不要求很精确的话,用alarm()和signal()就够了
    unsigned int alarm(unsigned int seconds)
    函数说明: alarm()用来设置信号SIGALRM在经过参数seconds指定的秒数后传送给目前的进程。如果参数seconds为0,则之前设置的闹钟会被取消,并将剩下的时间返回。
    返回值: 返回之前闹钟的剩余秒数,如果之前未设闹钟则返回0。
    alarm()执行后,进程将继续执行,在后期(alarm以后)的执行过程中将会在seconds秒后收到信号SIGALRM并执行其处理函数。
#include <stdio.h>
#include <unistd.h>
#include <signal.h>
void sigalrm_fn(int sig)
{
    printf("alarm!\n");
    alarm(2);
    return;
}
int main(void)
{
    signal(SIGALRM, sigalrm_fn);
    alarm(1);
    while(1) pause();
}
3.2、setitimer()
-------------------------------------------
    int setitimer(int which, const struct itimerval *value, struct itimerval *ovalue));
    setitimer()比alarm功能强大,支持3种类型的定时器:
    ITIMER_REAL :&nb


相关文档:

实战Linux Bluetooth编程(三) HCI层编程

1. HCI层协议概述:
HCI提供一套统一的方法来访问Bluetooth底层。如图所示:
从图上可以看出,Host Controller Interface(HCI)  就是用来沟通Host和Module。Host通常就是PC, Module则是以各种物理连接形式(USB,serial,pc-card等)连接到PC上的bluetooth Dongle。
在Host这一端:application,SDP,L2cap等协议 ......

linux—select详解

linux—select详解
select系统调用时用来让我们的程序监视多个文件句柄的状态变化的。程序会停在select这里等待,直到被监视的文件句柄有一个或多个发生了状态改变。
关于文件句柄,其实就是一个整数,通过socket函数的声明就明白了:
int socket(int domain, int type, int protocol);
我们最熟悉的句柄是0、1、2 ......

[转]Linux Netfilter实现机制和扩展技术


Linux Netfilter实现机制和扩展技术
 
 
级别: 初级
杨沙洲
(pubb@163.net
)国防科技大学计算机学院
2003 年 3 月 01 日
http://www.ibm.com/developerworks/cn/linux/l-ntflt/
2.4.x的内核相对于2.2.x在IP协议栈部分有比较大的改动,
Netfilter-iptables更是其一大特色,由于它功能强大,并且与 ......

linux启动时挂载rootfs的几种方式

[转]linux启动时挂载rootfs的几种方式
一直对linux启动时挂载根文件系统的过程存在着很多疑问,今天在水木精华区找到了有用的资料,摘录如下:
1。linux启动时,经过一系列初始化之后,需要mount 根文件系统,为最后运行init进程等做准备,mount
根文件系统有这么几种方式:
1)文件系统已经存在于硬盘(或者类似的设备 ......

五种Linux桌面操作过程录制的文件

Linux系统越来越受到电脑用户的欢迎,于是很多人开始学习Linux时,在很多时候,我们需要将在Linux桌面上的操作过程录制下来,比如制作屏幕
演示、视频教学等。这里将介绍在Linux桌面下值得使用的5个屏幕录像软件,包括Istanbul、Wink、Xvidcap、Vnc2swf、
Recordmydesktop,希望对有此需求的朋友提供参考。
  Istanbul ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号