自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(99)
  • 收藏
  • 关注

转载 objc.io#19#与调试器共舞 - LLDB 的华尔兹

你是否曾经苦恼于理解你的代码,而去尝试打印一个变量的值?1NSLog(@"%@", whatIsInsideThisThing);或者跳过一个函数调用来简化程序的行为?1NSNumber *n = @7; // 实际应该调用这个函数:Foo();或者短路一个逻辑检查?1if&a

2018-07-30 16:13:39 341

原创 macOS 查看链接的动态库

otool   

2018-07-24 14:11:54 2129 1

原创 macOS dark model

获取当前系统是否为dark model   NSDictionary *dict = [[NSUserDefaults standardUserDefaults] persistentDomainForName:NSGlobalDomain]; id style = [dict objectForKey:@"AppleInterfaceStyle"]; bool ...

2018-07-19 15:22:59 606

转载 iOS 判断当前网络状态的三种方法

iOS 判断当前网络状态的三种方法 时间:17-11-03 15:00:33 点击:11230 来源:萝莉与我 在项目中,为了好的用户体验,有些场景必须线判断网络状态,然后才能决定改干嘛。比如视频播放,需要线判断是Wifi还是4G,Wifi直接播放,4G先提示用户。获取网络状态的方法大概有三...

2018-07-17 08:51:24 255

转载 Cocoa: child Window in center of Main window

Solution A: before showing the child, set its frame to the appropriate position in the middle. If the user moves the main window, adjust the child as well.Solution B: make the child window with the ...

2018-07-16 08:57:30 209

转载 Docker可视化监控

原 Docker可视化监控?看这篇文章 <div class="article-info-box"> <div class="article-bar-top d-flex"> &l

2018-07-16 08:56:46 477

原创 如何防止一块内存被交换到disk

Mlock/mlockall/munlock To prevent a region of memory from being swapped to disk, use the following call:r = mlock( ptr , size );

2018-07-16 08:54:02 506

原创 ICMP

1.      报文一般格式 2.      ICMP报文类型

2018-07-16 08:52:34 384

原创 SSH代理

Network topology反向代理Lan PC 可以ssh到Internet上的PC, 但是Internet上的PC不能ssh到Lan PC.如果想internet上PC能够ssh到lan PC, ssh 反向代理的解决办法:1.      在lan PC上执行如下命令:$ ssh wanuser@13.121.57.154 -R 21436:127.0.0.1:222.      在Int...

2018-07-16 08:51:10 236

原创 Linux系统内的线程间通信方式

2018-07-16 08:50:42 845

原创 替换NSTextView的某个字符串

替换NSTextView的某个字符串             NSString *textContents = [[self.textView textStorage] string]; NSRange replaceRange = NSMakeRange(0, [self.textView.textStorage length]); NS...

2018-07-16 08:47:16 342

原创 窗口中下挂一个另一个窗口

窗口中下挂一个alert窗口  NSAlert *alert = [[NSAlert alloc] init]; [alert addButtonWithTitle:@"Yes"]; [alert addButtonWithTitle:@"No"]; [alert setAlertStyle:NSWarningAlertStyle]; ...

2018-07-15 18:20:01 186

原创 子窗口放在主窗口的中间

如何将子窗口放在主窗口的中间,覆盖主窗口   NSRect mainFrame = ((AppDelegate *)[NSApp delegate]).mainWindowController.window.frame; NSRect myFrame = [self.window frame]; NSPoint newOriginPoint; ...

2018-07-15 18:08:41 328

转载 国内最流行且免费的11个服务器监控工具

国内最流行且免费的11个服务器监控工具,拿走不谢! 作者: 水淼 日期: 2017-03-28 09:00:43 人气: 3...

2018-07-15 18:03:23 61001 5

原创 用户空间和内核空间的交互方式

IoctlProcNetlink socketSys

2018-07-15 18:01:29 387

原创 进程/线程的CPU/MEM/NET使用控制

Linux系统提供Control Group(CGrop)这个Feature控制系统资源在不同服务间的分配。

2018-07-15 18:01:03 219

原创 socket 端口重用

使用SO_REUSEADDR选项, 处于TIME_WAIT状态(还有其他情况导致端口资源还没完全释放)的socket的端口可以被立即重用。

2018-07-15 18:00:21 1594

原创 同一个Linux系统内的进程间通信方式

2018-07-13 09:47:11 161

原创 单个进程中最大允许的线程数

1.      与系统资源相关,即线程栈的大小  a)        线程栈默认大小可以通过‘ulimit -s’查看,通常这个值是8M。如果用户修改了该值,则可以查看’/proc/self/limits’获取该进程相应的值 (其实是需要考虑线程栈和guard page的size)b)       在32系统上用户空间大小为3G,3 * 1...

2018-07-13 09:46:52 3910

原创 socket Select/Poll/EPoll

  Select Poll Epoll 一个进程所能打开的最大连接数 单个进程所能打开的最大连接数有FD_SETSIZE宏定义 poll本质上和select没有区别,但是它没有最大连接数的限制,原因是它是基于链表来存储的 虽然连接数有上限,但是很大 FD剧增后带来的IO效率问题 因为每次调用时都会对连接进行线性遍历,所以随着FD的增加会造成遍历速度慢的“线性下降性能问题 同sele...

2018-07-13 09:46:20 134

原创 控制进程/线程只在某个/某些进程上运行.

sched_getaffinity / sched_setaffinity控制进程/线程只在某个/某些进程上运行.

2018-07-13 09:45:40 127

原创 进程和线程的区别

进程和线程的区别 (待完善)1.      进程是一个具有独立功能的程序关于某个数据集合的一次运行活动。它可以申请和拥有系统资源,是一个动态的概念,是一个活动的实体。2.      进程作为分配资源的基本单位,而把线程作为独立运行和独立调度的基本单位。由于线程比进程更小,基本上不拥有系统资源,故对它的调度所付出的开销就会小得多,能更高效的提高系统内多个程序间并发执行的程度。3.      一个进程...

2018-07-13 09:45:33 95

原创 Linux系统调用

2018-07-13 09:45:29 108

原创 Linux中的内存管理

内存管理中的overcommit1.      什么是overcommitLinux calls this overcommit, which refers to the fact that thekernel allows a process to allocate more memory than is currently available.The kernel is effectively...

2018-07-13 09:45:26 285

原创 Linux守护进程编写规范

编写规范1.      调用umask将文件模式创建屏蔽字设置为0.2.      调用fork,然后使父进程退出3.      调用setsid以创建新的会话4.      将当前工作目录更改为根目录5.      关闭不再需要的文件描述符6.      某些守护进程打开/dev/null使其具有文件描述符0, 1和27.      用户可以选择屏蔽部分信号...

2018-07-13 09:44:49 124

原创 Linux下优先级反转

2018-07-13 09:44:45 1582

原创 线程优先级

线程优先级1.        首先,线程的优先级与进程的优先级有关。???2.        可以通过线程的相关属性设置/修改线程的调度策率和优先级:pthread_getschedparam / pthread_setschedparam / pthread_setschedprio...

2018-07-13 09:44:34 301

原创 进程栈; 线程栈

1.      每个线程都有一个栈;2.      进程中各个线程的栈是共享的 (从用法上来讲,每个线程有一个独立的栈, 但是从linux内存管理上讲, linux不能以线程为单位管理内存; 一个线程可以访问另一线程的栈内容,而MMU不会报错.)3.      Linux在设计时贯彻一个”早死早超生”的原则, 他会检测正常的栈越界. 正常的栈越界是慢慢地,循序渐进地, linux内核在两个线程的栈...

2018-07-12 09:38:44 714

原创 设置线程退出时的回调函数

This is done by specifying one ormore functions that will be called automatically by the pthreads library whenthe thread exits, either due to its own will (e.g. calling pthread_exit()), ordue to it be...

2018-07-12 09:38:38 1283

原创 线程私有数据

线程私有数据是存储和查询与某个线程相关的一种机制。一个明显的实例就是errno, 一个线程做了设置errno的操作并不会影响进程中其它线程的errno值。API   pthread_key_create man pthread_key_create pthread_key_delete   pthread_once   pthread_getspecific   pthread_sets...

2018-07-12 09:38:27 114

原创 线程属性

在创建线程前可以设置该线程的属性,可设置的属性有:(线程默认的属性是:detachstate is PTHREAD_JOINABLE, scheduling policy is SCHED_OTHER,  nouser-provided stack)1.        线程的分离状态(detachstat), 如果设置为分离状态,则不能接受pthread_join.2.        线程栈的位置...

2018-07-12 09:38:18 319

原创 进程中可以创建线程的最大个数

1.      首先,不同的系统,线程的最大个数的定义不同。2.      线程个数与每个线程所占空间有关系。线程所占空间首先看栈空间的大小。3.      线程栈空间可以通过’ulimit –s’ 查看和修改。4.      虚拟内存空间可以通过’ulimit –v’查看和修改。5.       线程最大个数的计算:Linux虚拟内存空间大小(3G) / 线程栈空间的大小。6.       Li...

2018-07-12 09:38:12 1163

原创 线程间通信

锁机制互斥锁同一时间只有一个线程访问数据。互斥锁采用pthread_mutex_t数据类型表示,常用API包括:API   pthread_mutex_init   pthread_mutex_destroy   pthread_mutex_lock   pthread_mutex_trylock   pthread_mutex_unlock   读写锁读写锁有三个状态:读模式下加锁状...

2018-07-12 09:37:05 89

原创 进程间通信与同步

环境变量 http://www.tldp.org/LDP/lpg/node7.html  管道/有名管道 管道用于具有亲缘关系的进程间通信。有名管道除具有管道的功能外,它还允许无亲缘关系的进程间的通信。管道和有名管道均为半双工的通信方式。管道只能承载无格式字节流以及缓冲区大小受限。1.        管道a)        Pipeb)       fopen2.        有名管道a)   ...

2018-07-12 09:36:59 106

原创 进程优先级/进程调度策略

http://www.cnitblog.com/flutist1225/articles/19989.html 如何查看/设置/调整进程的优先级1.      查看:ps –l xxx2.      设置:nice3.      调整:renice4.      修改为实时进程: chrt进程的nice值不是进程的优先级,他们不是一个概念,但是进程nice值会影响到进程的优先级变化。 5.    ...

2018-07-12 09:36:50 1929

原创 进程创建/进程的终止

进程创建fork函数1.        对于fork函数,父进程中返回子进程的pid,因为父进程可能有多个子进程,但没有一个系统调换可以获取所有子进程的pid; 子进程中返回0,因为一个进程只能有一个父进程,可以通过getppid获取父进程的pid.2.        对于fork函数,子进程获得父进程的数据段,堆,栈的副本。父子进程共享正文段。子进程中需要复制的内容并不会被立即完全复制,而是采用...

2018-07-12 09:36:39 214

原创 ubuntu 搭建Hadoop,hive,zookeeper详细步骤

Hadoop installStandalone operationStep #1, install1.      Install VMWare ESXi 6.0,vSphere Client.2.      Install Ubuntu 16.04 (ubuntu-16.04.1-desktop-amd64.iso)3.      Install rsync, openssh-server,x1...

2018-07-12 09:36:00 468

原创 文件访问权限位

程序运行时具有其它用户的权限. (以其它用户权限运行程序)

2018-07-11 15:17:45 218

原创 文件IO

1.      标准文件fd: 0, 标准输入;1, 标准输出; 2: 标准错误2.      进程所有打开的fd可以在/proc/pid/fd中查看;3.      常用文件操作函数:open, read, write, close, lseek, ioctl4.      创建临时文件: mktemp5.      文件空洞...

2018-07-11 15:16:34 106

原创 原子操作/可重入函数/线程安全函数

原子操作原子操作是由多个步骤组成的操作。如果该操作原子的执行,则要么执行完所有的操作,要么一步也不执行。可重入函数    在实时系统的设计中,经常会出现多个任务调用同一个函数的情况。如果这个函数不幸被设计成为不可重入的函数的话,那么不同任务调用这个函数时可能修改其他任务调用这个函数的数据,从而导致不可预料的后果。那么什么是可重入函数呢?一个可重入的函数简单来说就是可以被中断的函数,也就是说,可以在...

2018-07-11 15:15:45 305

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除