ios开发之NSProcessInfo

来源:互联网 发布:js blob转成base64 编辑:程序博客网 时间:2024/05/21 00:46

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 = 12017-05-06 03:22:25.650 objc-base[1033:31119] physicalMemory = 42949672962017-05-06 03:22:25.650 objc-base[1033:31119] systemUptime = 9069.080363
0 0
原创粉丝点击