#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <sys/time.h>
#include <sys/resource.h>
#include <sys/types.h>
#include <unistd.h>


static void work()
{
int i = 0;
FILE *f;
double x = 3.5;

f = tmpfile();
if(!f)
{
  exit(0);
}

for(;i<1000;i++)
{
  fprintf(f, "Do some output\n");
  if(ferror(f))
  {
    fprintf(stderr, "Error writing to temporary file\n");
    exit(1);
  }
}

for(i=0;i<1000000;i++)
{
  x = log(x*x + 3.1);
}

}

 


int main()
{

  struct rusage r_usage;

  struct rlimit r_limit;

  int priority;

  work();

 //用户时间,系统时间cpu

  getrusage(RUSAGE_SELF, &r_usage);

  
  printf("user time: %ld.%06ld sys time: %ld.%06ld\n", r_usage.ru_utime.tv_sec, r_usage.ru_utime.tv_usec,
  r_usage.ru_stime.tv_sec, r_usage.ru_stime.tv_usec);


  //优先级
  priority = getpriority(PRIO_PROCESS, getpid());
  printf("priority is: %d\n", priority);


  //文件大小限制
  int rv = getrlimit(RLIMIT_FSIZE, &r_limit);
  if(-1 == rv)
  {
    printf("error\n");
  }
  else
  {
    printf("soft = %ld hard = %ld\n", r_limit.rlim_cur, r_limit.rlim_max);
  }

 


}

posted on 2016-03-24 18:02  邶风  阅读(293)  评论(0编辑  收藏  举报