设为首页 加入收藏

TOP

利用BLCR加快Android的启动过程(三)
2014-11-24 07:48:44 来源: 作者: 【 】 浏览:10
Tags:利用 BLCR 加快 Android 启动 过程
cr_request_checkpoint");


return rc;


}



return my_args.cr_fd;


}



int


crut_checkpoint_wait(cr_checkpoint_handle_t *handle_p, int fd) {


int rc, save_err;



do {


rc = cr_poll_checkpoint(handle_p, NULL);


if (rc < 0) {


if ((rc == CR_POLL_CHKPT_ERR_POST) && (errno == CR_ERESTARTED)) {


/* restarting -- not an error */


rc = 1; /* Signify RESTART to caller */


} else if (errno == EINTR) {


/* poll was interrupted by a signal -- retry */


continue;


} else {


/* return the error to caller */


break;


}


} else if (rc == 0) {


fprintf(stderr, "cr_poll_checkpoint returned unexpected 0\n");


rc = -1;


goto out;


} else {


rc = 0; /* Signify CONTINUE to caller */


}


} while (rc < 0);



save_err = errno;


#if 0 // Nothing in the testsuite needs this, but your APP might want it.


(void)fsync(fd);


#endif


(void)close(fd);


errno = save_err;



out:


return rc;


}



int


crut_checkpoint_block(const char *filename) {


cr_checkpoint_handle_t my_handle;


int ret, fd, save_err;



fd = crut_checkpoint_request(&my_handle, filename);


if (fd < 0) return fd;



ret = crut_checkpoint_wait(&my_handle, fd);



save_err = errno;


(void)close(fd);


errno = save_err;



return ret;


}


首页 上一页 1 2 3 4 5 下一页 尾页 3/5/5
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇在Android中加入抓屏软件fbdump. 下一篇在Android中加入充电指示

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·C++ Lambda表达式保 (2025-12-26 05:49:45)
·C++ Lambda表达式的 (2025-12-26 05:49:42)
·深入浅出 C++ Lambda (2025-12-26 05:49:40)
·C语言指针从入门到基 (2025-12-26 05:21:36)
·【C语言指针初阶】C (2025-12-26 05:21:33)