描述
导致当前线程挂起执行至少在其参数中指定的毫秒数。
C / C ++语法
int sqlite3_sleep(int); |
PB语法
FUNCTION sqlite3_sleep (BYVAL ms AS LONG) AS LONG |
参数
ms
[in]睡眠的毫秒数。
返回值
返回从操作系统实际请求的睡眠的毫秒数。
备注
如果操作系统不支持毫秒时间分辨率的睡眠请求,那么时间将被舍入到最接近的秒。返回从操作系统实际请求的睡眠的毫秒数。
SQLite通过调用默认sqlite3_vfs对象的xSleep方法来实现此接口。如果默认VFS的xSleep方法未正确实现或完全不实现,则sqlite3_sleep的行为可能偏离前面段落的描述。
C ++实现代码
/*
** Sleep for a little while. Return the amount of time slept.
*/
SQLITE_API int sqlite3_sleep(int ms){
sqlite3_vfs *pVfs;
int rc;
pVfs = sqlite3_vfs_find(0);
if( pVfs==0 ) return 0;
/* This function works in milliseconds, but the underlying OsSleep()
** API uses microseconds. Hence the 1000's.
*/
rc = (sqlite3OsSleep(pVfs, 1000*ms)/1000);
return rc;
}