我搜索了这个主题,但发现很少有帮助的细节.有了这些细节,我试着按如下方式编写一些代码.
注意:请将此帖中分享的详细信息与其他帖子进行比较,然后再将其标记为DUPLICATE,而不仅仅是主题.
- (NSArray *)getDataCountersForType:(int)type {
BOOL success;
struct ifaddrs *addrs = nil;
const struct ifaddrs *cursor = nil;
const struct sockaddr_dl *dlAddr = nil;
const struct if_data *networkStatisc = nil;
int dataSent = 0;
int dataReceived = 0;
success = getifaddrs(&addrs) == 0;
if (success) {
cursor = addrs;
while (cursor != NULL) {
if (cursor->ifa_addr->sa_family == AF_LINK) {
dlAddr = (const struct sockaddr_dl *) cursor->ifa_addr;
networkStatisc = (const struct if_data *) cursor->ifa_data;
if (type == WiFi) {
dataSent …Run Code Online (Sandbox Code Playgroud) 我们如何衡量在Swift中运行函数所用的时间?我试图像这样显示经过的时间:"Elasped time is .05 seconds".看到在Java中,我们可以使用System.nanoTime(),是否有任何等效的方法可用于Swift来实现这一目的?
请看一下示例程序:
func isPrime(var number:Int) ->Bool {
var i = 0;
for i=2; i<number; i++ {
if(number % i == 0 && i != 0) {
return false;
}
}
return true;
}
var number = 5915587277;
if(isPrime(number)) {
println("Prime number");
} else {
println("NOT a prime number");
}
Run Code Online (Sandbox Code Playgroud) 我正在寻找一种方法来在iOS上获得绝对的,始终递增的系统正常运行时间.
它应该返回自设备上次重新启动以来的时间,并且不受系统日期更改的影响.
当设备处于休眠状态(所有我能找到任何方法暂停CACurrentMediaTime,[NSProcessInfo systemUptime],mach_absolute_time),或改变系统日期变更时(sysctl/KERN_BOOTTIME).
有任何想法吗?
C/C++程序员可以使用的最快的计时系统是什么?
例如:
time()将给出自1970年1月1日00:00以来的秒数.
Windows上的GetTickCount()将给出自系统启动时间以来的时间(以毫秒为单位),但限制为49.7天(此后它将简单地回零).
我想获得当前时间,或者从系统/应用程序启动时间开始计时,以毫秒为单位.
最大的问题是方法的开销 - 我需要最轻的一个,因为我每秒钟要打多次.
我的情况是我有一个工作线程,对于那个工作线程我发布了待处理的工作.每个工作都有一个"执行时间".因此,我不关心时间是当前的"实际"时间还是系统正常运行时间以来的时间 - 它必须是线性的和轻的.
编辑:
unsigned __int64 GetTickCountEx()
{
static DWORD dwWraps = 0;
static DWORD dwLast = 0;
DWORD dwCurrent = 0;
timeMutex.lock();
dwCurrent = GetTickCount();
if(dwLast > dwCurrent)
dwWraps++;
dwLast = dwCurrent;
unsigned __int64 timeResult = ((unsigned __int64)0xFFFFFFFF * dwWraps) + dwCurrent;
timeMutex.unlock();
return timeResult;
}
Run Code Online (Sandbox Code Playgroud) 我需要从上次设备启动时获取NSTimeInterval值.我发现CACurrentMediaTime()适合这个任务,但在我的应用程序中我没有使用Core Animation,我不认为这是包含这个框架只是为了获得这个功能的最佳方式.有没有另一种方法可以在最后一次启动后的几秒钟内获得更优雅的方式?