ios开发之NSProcessInfo

NSProcessInfo用于获取进程相关信息。

@property (class, readonly, strong) NSProcessInfo *processInfo;

获取NSProcessInfo的单例

@property (readonly, copy) NSDictionary<NSString *, NSString *> *environment;

返回环境变量字典

@property (readonly, copy) NSArray<NSString *> *arguments;

返回命令行参数数组

NSProcessInfo *info=[NSProcessInfo processInfo];

NSArray *argv=[info arguments];

NSLog(@"arguments = %@",argv);

输出

arguments = (
    "/Users/xxx/Library/Developer/CoreSimulator/Devices/C45D215F-B78C-4D92-BCDD-0A76DFD5657D/data/Containers/Bundle/Application/D07BAA18-57EB-475E-8DF2-84CC19AA9DD4/objc-base.app/objc-base"
)
@property (readonly, copy) NSString *hostName;

返回主机名

NSProcessInfo *info=[NSProcessInfo processInfo];

NSString *host=[info hostName];

NSLog(@"hostName = %@",host);

输出

hostName = xxxtekiMac.local
@property (copy) NSString *processName;

返回进程名字

@property (readonly) int processIdentifier;

返回进程标识符

@property (readonly, copy) NSString *globallyUniqueString;

返回全局唯一的字符串

NSProcessInfo *info=[NSProcessInfo processInfo];

NSString *pname=[info processName];

int pid=[info processIdentifier];

NSString *pstr=[info globallyUniqueString];

NSLog(@"processName = %@ processIdentifier = %d globallyUniqueString = %@",pname,pid,pstr);

输出

processName = objc-base processIdentifier = 980 globallyUniqueString = A3378B9D-5107-4B2A-A917-33E241603BEB-980-00000740D246AFA4
- (NSUInteger)operatingSystem

返回操作系统类型。返回值为下面的类型

enum {
    NSWindowsNTOperatingSystem = 1,
    NSWindows95OperatingSystem,
    NSSolarisOperatingSystem,
    NSHPUXOperatingSystem,
    NSMACHOperatingSystem,
    NSSunOSOperatingSystem,
    NSOSF1OperatingSystem
}
- (NSString *)operatingSystemName

返回操作系统的名字

@property (readonly, copy) NSString *operatingSystemVersionString;

返回操作系统的版本号

@property (readonly) NSOperatingSystemVersion operatingSystemVersion

返回操作系统的版本。

typedef struct {
    NSInteger majorVersion;
    NSInteger minorVersion;
    NSInteger patchVersion;
} NSOperatingSystemVersion;
NSProcessInfo *info=[NSProcessInfo processInfo];

NSInteger opt = [info operatingSystem];

NSString *name=[info operatingSystemName];

NSString *version=[info operatingSystemVersionString];

NSOperatingSystemVersion ver=[info operatingSystemVersion];

NSLog(@"operatingSystem = %ld \n operatingSystemName = %@ \n operatingSystemVersionString = %@ \n operatingSystemVersion = %ld %ld %ld",opt,name,version,ver.majorVersion,ver.minorVersion,ver.patchVersion);

输出

2017-05-06 03:15:29.900 objc-base[1010:29501] operatingSystem = 5 
 operatingSystemName = NSMACHOperatingSystem 
 operatingSystemVersionString = Version 10.2 (Build 14C89) 
 operatingSystemVersion = 10 2 0
@property (readonly) NSUInteger processorCount

返回处理器数量

@property (readonly) NSUInteger activeProcessorCount

返回活动的处理器数量

@property (readonly) unsigned long long physicalMemory

返回物理内存大小

@property (readonly) NSTimeInterval systemUptime

返回启动到现在经过的秒数

NSProcessInfo *info=[NSProcessInfo processInfo];

NSUInteger cpuCount=[info processorCount];

NSUInteger aCpuCount=[info activeProcessorCount];

unsigned long long mem=[info physicalMemory];

NSTimeInterval tim=[info systemUptime];

NSLog(@"processorCount = %lu ",cpuCount);
NSLog(@"activeProcessorCount = %lu",aCpuCount);
NSLog(@"physicalMemory = %llu",mem);
NSLog(@"systemUptime = %lf",tim);

输出

2017-05-06 03:22:25.649 objc-base[1033:31119] processorCount = 1 
2017-05-06 03:22:25.649 objc-base[1033:31119] activeProcessorCount = 1
2017-05-06 03:22:25.650 objc-base[1033:31119] physicalMemory = 4294967296
2017-05-06 03:22:25.650 objc-base[1033:31119] systemUptime = 9069.080363
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值