gpt4 book ai didi

ios - 如何计算 iOS 中的事件线程数

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:52:01 29 4
gpt4 key购买 nike

我想获取我的 iOS 应用程序中“事件”的线程数。

我可以在 NSThread 类中使用 threadDictionary 吗?或者我可以使用 mach/thread_info.h 吗?

最佳答案

Michael Dautermann 已经回答了这个问题,但这是一个使用 Mach API 获取线程数的示例。注意它只能在模拟器上工作(通过 iOS 6.1 测试),在设备上运行它会失败,因为 task_for_pid 返回 KERN_FAILURE

/**
* @return -1 on error, else the number of threads for the current process
*/
static int getThreadsCount()
{
thread_array_t threadList;
mach_msg_type_number_t threadCount;
task_t task;

kern_return_t kernReturn = task_for_pid(mach_task_self(), getpid(), &task);
if (kernReturn != KERN_SUCCESS) {
return -1;
}

kernReturn = task_threads(task, &threadList, &threadCount);
if (kernReturn != KERN_SUCCESS) {
return -1;
}
vm_deallocate (mach_task_self(), (vm_address_t)threadList, threadCount * sizeof(thread_act_t));

return threadCount;
}

关于ios - 如何计算 iOS 中的事件线程数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21478229/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com