一行命令用Python建HTTP服务器

打开命令行,输入下面的代码:

python -mSimpleHTTPServer

就能在当前目录下运行一个HTTP服务器。
当前目录不知道是什么的话,看你的命令行的提示就行了。

访问很简单,打开下面的网址,就能看到你当前文件夹下的文件:

http://你的IP地址:8000/


如果你在当前文件夹下放了个index.html文件,那么打开下面的网址,就能看到这个index.html的内容了:

http://localhost:8000/

 

How do I set adaptive multiline UILabel text? UILable 文本自动换行

 This is much better approach if you are looking for multiline dynamic text label which exactly takes the space based on its text.

No sizeToFit, preferredMaxLayoutWidth used

Below is how it will work.

enter image description here

 Lets set up the project. Take a Single View application and in Storyboard Add a UILabel and a UIButton. Define constraints to UILabel as below snapshot:

enter image description here

Set the Label properties as below image:

enter image description here

Add the constraints to the UIButton. Make sure that vertical spacing of 100 is between UILabel and UIButton

enter image description here

Now set the priority of the trailing constraint of UILabel as 749

enter image description here

Now set the Horizontal Content Hugging and Horizontal Content Compression properties of UILabel as 750 and 748

enter image description here

Below is my controller class. You have to connect UILabel property and Button action from storyboard to viewcontroller class.

import UIKit  class ViewController: UIViewController {  @IBOutlet weak var textLabel: UILabel! var count = 0 let items = ["jackson is not any more in this world", "Jonny jonny yes papa eating sugar no papa", "Ab", "What you do is what will happen to you despite of all measures taken to reverse the phenonmenon of the nature"]   @IBAction func updateLabelText(sender: UIButton) {     if count > 3 {         count = 0     }     textLabel.text = items[count]     count = count + 1 }  override func viewDidLoad() {     super.viewDidLoad()     // Do any additional setup after loading the view, typically from a nib.     //self.textLabel.sizeToFit()     //self.textLabel.preferredMaxLayoutWidth = 500 }  override func didReceiveMemoryWarning() {     super.didReceiveMemoryWarning()     // Dispose of any resources that can be recreated. }   }

Thats it. This will automatically resize the UILabel based on its content and also you can see the UIButton is also adjusted accordingly.

linux下查看最消耗CPU、内存的进程

 1.CPU占用最多的前10个进程: 

ps auxw|head -1;ps auxw|sort -rn -k3|head -10 

2.内存消耗最多的前10个进程 

ps auxw|head -1;ps auxw|sort -rn -k4|head -10 

3.虚拟内存使用最多的前10个进程 
ps auxw|head -1;ps auxw|sort -rn -k5|head -10

 

 

 

http://my.oschina.net/goberl/blog/85816

 

1. 在linux下,查看一个运行中的程序, 占用了多少内存, 一般的命令有

   (1). ps aux:

 

     其中  VSZ(或VSS)列 表示,程序占用了多少虚拟内存。

           RSS列 表示, 程序占用了多少物理内存。

           虚拟内存可以不用考虑,它并不占用实际物理内存。

   (2). top 命令也可以

     其中  VIRT(或VSS)列  表示,程序占用了多少虚拟内存。 同 ps aux 中的 VSZ列

           RES列 表示, 程序占用了多少物理内存。同 ps aux 中的RSS列

           

2.在linux下, 查看当前系统占用了多少内存, 一般的命令是  free

其中, free就是系统还有多少内存可以使用。

但由于 linux 系统对内存使用有一个原则, 就是, 内存是宝贵的, 能使用多少就使用多少。 所以, linux会把已经调用过的包缓存起来,放在内存里。

这样,实际上,可以使用的内存,就可以理解为, free+buffers+cached

 

3.当你了解完这些命令以后, 再去使用ps aux 命令去查看的时候, 会发现一个奇怪的现象。

 所有的  RSS 列的数据,加起来, 比物理内存的数要大很多。

 比如, 物理内存为2G, 而RSS列的数据加起来,可能有5个G之多, 这是怎么回事了?

 

 这是因为RSS列的值骗了我们。 

 

 linux的内存机制是这样的:

 在运行一个程序时, linux会调用该程序依赖的链接库, 如lib.xx.so。 首先看该链接库是否被映射进内存中,如果没有被映射,则将代码段与数据段映射到内存中,否则只是将其加入进程的地址空间。

 

 这样,当N个程序,依赖到lib.xx.so的时候, 实际上,内存中只有一个lib.xx.so ,而不是N个。 

 

 而RSS在显示一个程序占用的实际物理内存时, 将lib.xx.so也算了进来。

 

 比如, X程序, 本身占用内存为5M, lib.xx.so 占用内存2M,lib.xx.so被N个程序共享依赖。 则RSS显示为,X程序运行,占用内存为7M。 实际上, X程序占用了5M空间。 多余的2m被讨入到RSS中了。

 

 当你在用ps aux显示内存占用情况时, N个共享依赖lib.xx.so的N个程序,都把这2m空间,算在自己的RSS中了, 这样RSS的sum值,就比实际物理内存多了。

 

 当然, linux的内存使用机制很复杂, 不是一句两句能说清楚的。这里只是简单的说明了一下, ps aux中的RSS值, 并不能真实反映物理内存的使用情况。

 

4. 如果查看更详细的内存使用情况, 可用以下几种方法, 或者几种方法结合使用:

这几种方法,都需要root账户的权限

 

(1). pmap -d $pid 

$pid 是正在运行的程序的pid

 

http://blog.chinaunix.net/uid-28811939-id-4070166.html

veracrypt / truecrypt windows 10 函数不正确。 Incorrect Function

 

 
 
https://discussions.apple.com/thread/7140688?start=0&tstart=0
 
 
1. Download Sysinternals Autoruns(https://technet.microsoft.com/en-us/sysinternals/bb963902.aspx?f=255&MSPPError=-2147217396) and run it as an Administrator.
2. Search for “apple” and you’ll see “applehfs.sys”.
image
3. Disable it by unchecking AppleHFS and restart. You should now be able to create System Restore images and Windows 7 style backups.
 

 1. Download Sysinternals Autoruns and run it as an Administrator.

2. Search for “apple” and you’ll see “applehfs.sys”.

image

3. Disable it by unchecking AppleHFS and restart. You should now be able to create System Restore images and Windows 7 style backups.

如何向外行解释产品经理频繁更改需求为什么会令程序员烦恼?

 著作权归作者所有。

商业转载请联系作者获得授权,非商业转载请注明出处。
作者:猫爱吃鱼不吃耗子
链接:https://www.zhihu.com/question/40712955/answer/87890964
来源:知乎
 

 

你去饭店,坐下来。
“服务员,给我来份宫保鸡丁!”
“好嘞!”
——————这叫原始需求
 
大厨做到一半。
“服务员,菜里不要放肉。”
“不放肉怎么做啊?”
“不放肉就行了,其它按正常程序做,不就行了,难吗?”
“好的您稍等”
——————中途需求变更
 
厨房:
大厨:“你大爷,我肉都回锅了”
服务员:“顾客非要要求的嘛,你把肉挑出来不就行了吗”
大厨:“行你大爷”
然而还是一点点挑出来了
——————改动太大,部分重构
 
餐厅:
“服务员,菜里能给我加点腐竹吗?”
“行,这个应该简单。”
——————低估改动成本
 
厨房:
大厨:“你TMD,不知道腐竹得提前泡水?炒到一半才说?跟他说,想吃腐竹就多等半天”
服务员:“啊你怎么不早说?”
大厨:“早说你MLGB我怎么知道他要往宫保鸡丁里放腐竹”
然而还是去泡腐竹了
——————新需求引入了新研发成本
 
餐厅:
“服务员,还是把肉加回去吧”
“您不是刚说不要肉吗”
“现在又想要了”
“…好的您稍等”
——————某一功能点摇摆不定
 
厨房:
大厨:“日你啊,菜都炒过火了你让我放肉?还好肉我没扔”
服务员:“客户提的要求你日我干嘛?”
大厨:“你就不能拒绝他啊?啊?”
服务员:“人家是客户嘛。”
——————甲方是大爷
 
餐厅:
“服务员!服务员!”
“来了来了,你好?”
“怎么这么半天啊?”
“稍等我给您催催啊”
——————改动开始导致工期延误
 
厨房:
大厨:“催你M催,腐竹没泡好,我还得重新放油,他要想吃老的也行,没法保质保量”
——————开发者请求重新排期
 
餐厅:
服务员:“抱歉,加腐竹的话得多等半天,您别着急哈”
“我靠要等那么久?我现在就要吃,你们能快点吗?”
“行…您稍等”
——————甲方催活
 
厨房:
大厨:“我日他仙人板板,中途改需求又想按期交付,逗我玩呢?”
服务员:“那我问问,要不让他们换个菜?”
大厨:“再换我就死了”
——————开发者开始和中间人pk
 
餐厅:
“服务员,这样吧,腐竹不要了,换成蒜毫能快点吗?对了,顺便加点番茄酱”
——————因工期过长再次改动需求
 
厨房:
大厨:“我日了狗啊,你TM不知道蒜毫也得焯水啊?还有你让我怎么往热菜里放番茄酱啊??”
服务员:“焯水也比等腐竹强吧,番茄酱往里一倒不就行了吗?很难吗?”
大厨:“草。腐竹我还得接着泡,万一这孙子一会又想要了呢。”
——————频繁改动开始导致大量冗余
 
餐厅:
“服务员,菜里加茄丁了没有?我去其它饭店吃可都是有茄丁的”
“好好好您稍等您稍等”
——————奇葩需求
 
厨房:
大厨:“我去他二大爷他吃的是斯里兰卡三流技校炒的宫保鸡丁吗?宫保鸡丁里放茄丁??”
服务员:“茄丁抄好了扔里边不就行了吗?”
大厨:“那TM还能叫菜吗?哪个系的?”
服务员:“客户要,你就给炒了吧。”
大厨:“MB你顺道问问他腐竹还要不要,我这盆腐竹还占着地方呢不要我就扔了”
——————奇葩你也得做
 
餐厅:
“服务员,还要多久能好啊”
“很快,很快…”
“再给我来杯西瓜汁。”
“…好”
“我再等10分钟,还不好我就走了,反正还没给钱。”
“很快,很快…”
——————黑暗前的最后黎明
 
10分钟后
“咦,我上次吃的不是这个味啊?”
从厨房杀出来的大厨:“我TM就日了你的狗…”
——————最终决战
 
——————
你=客户
服务员=客户经理+产品经理
大厨=码农
请自行转换…
——————
注:以上场景已极度夸张,实际生产生活中码农和PM是和睦友好的相亲相爱的一家人
——————
注:对于做2C产品的公司,你=公司大boss

Sleep Preventer – 防止电脑进入休眠

Sleep Preventer 1.3 – Prevents your computer from going to sleep, hibernate, dim the display or start the screensaver. Application runs in the system tray when closed. Similar to Caffeine for OS X. Toggle on/off by clicking the systray icon.

 

v1.3

  • Added parameter support
  • Cleaned up icons

v1.2

  • Added option to let display sleep

v1.1

  • Added sleep timer

Download Sleep Preventer 1.3 (1.3MB)
Tested on Windows XP, Windows 7 and Windows 8 (RT not supported).

Feel free to donate a couple of bucks if you like :)

 Sleep Preventer 是款可以防止电脑进入睡眠、休眠、显示器关闭以及屏保的小工具。@Appinn

Sleep Preventer   防止电脑进入休眠[图] | 小众软件

只需选择 Sleep Preventer 的 Timer 为无限禁止、或 5 分钟到 2 个小时,在此时段内禁止,勾选是否显示器睡眠即可。

 

Sleep Preventer   防止电脑进入休眠[图] | 小众软件 http://darkfame.net/projects/windows

推荐两个hash程序,主要用来鉴别文件是否被修改。

基本知识

Hash,一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度的输入(又叫做预映射, pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,而不可能从散列值来唯一的确定输入值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。

 

推荐程序

 有个绿色版本的Hash.ext  1.04 版本,支持 Version, Date, MD5, SHA1, CRC32

http://keir.net/hash.html

 

如果要支持SHA256,可以看看下面这个软件。

 

Freeware tool to calculate MD5, SHA-1, SHA-256, SHA-384, SHA-512 or CRC-32 hashes of single or multiple files. Fast and easy to use. Useful for checking downloads or generating hashes for your own files. Verify internet downloads and find corrupt files. Files can be dragged or sent from Windows Explorer, and the list can saved or copied to the clipboard.

What’s new in this version: Version 1.1 adds SHA-1, SHA-256, SHA-384, SHA-512 and CRC-32 support; saves settings; adds explorer integration and last Hash copy box.

Read more: Hash Tool – CNET Download.com http://download.cnet.com/Hash-Tool/3000-2248_4-10969531.html#ixzz2XsKYo3bP

Ruckus推出首款高速Wi-Fi墙面接入点

Ruckus日前推出首款Wi-Fi墙面接入点(ZoneFlexTM 7025),把高速802.11n Wi-Fi技术和有线以太网端口集成到别致的墙面插座上,并符合所有欧美电气接线盒标准。

 uckus日前推出首款Wi-Fi墙面接入点(ZoneFlexTM 7025),把高速802.11n Wi-Fi技术和有线以太网端口集成到别致的墙面插座上,并符合所有欧美电气接线盒标准。

  Ruckus Wi-Fi墙面接入点重新定义了酒店环境的部署模式和成本构成,将有线和无线网络融合到一个单一架构中,可靠地连接各种房间内的IP设备和服务。这是有史以来第一次,酒店可以通过一个单一的有线/无线网络,以最高的性能和最低的成本提供多种高价值IP服务。

  除了Ruckus Wi-Fi墙面接入点,Ruckus日前还推出了最新的ZoneSwitch产品线,可提供802.3at/af POE交换。

  下一代酒店技术(HTNG)协会(非盈利行业组织)执行副总裁兼首席执行官Douglas Rice表示:“对于酒店来讲,首先必须从访客技术的角度实现无处不在的无线覆盖。除此之外,酒店市场清晰地看到了IP网络在提供客户体验及新服务方面的巨大优势。这些新服务会提高酒店客户的忠诚度和员工效率。  

  Ruckus开发的Wi-Fi 墙面接入点旨在满足酒店连接客房内不断增加设备的需求。这些室内设备全部基于IP,还需要支持更大范围的IP服务。除了高速互联网接入(HSIA)以外,酒店还希望通过一个独立的、一体化的、集中管理的有线/无线网络,来提供这些新服务,如高清电视、视频点播(VOD)、数字广告、语音通信、酒店服务优化、室内设备监控,甚至房间环境的控制等。

  Ruckus的Wi-Fi墙面接入点为酒店提供了一种简单的房间内设备来满足这些需求,解决长期困扰酒店的IT问题:
@ 需要管理完全不同的有线和无线网络
@ 需要处理酒店客房内各种电缆和网络设备
@ 需要在客房和其他区域安装更多以太网线缆,连接新型IP设备
@ 需要增加更多以太网线缆,支持独立的Wi-Fi接入点
@ 需要部署室内交换及用于网络连接的必要设施
@  需要改造家具及酒店陈设,以隐藏或放置网络设备

  Ruckus ZoneFlex Wi-Fi墙面接入点对于填补酒店和学校的“空白区域”也是个理想选择,如,建筑物拐角、会议室及其他有线和无线覆盖不到的地方。对于很多酒店来说,会议室的以太网接入通常会通过连接一台交换机来处理,如果无线网络不能使用,可以提供有线连接。Ruckus ZoneFlex Wi-Fi墙面接入点解决了这一问题,它可以支持多种设备通过有线和Wi-Fi进行连接。此外,Ruckus Wi-Fi墙面接入点对于寻求为客户提供高价值IP服务的服务提供商和业主来说也是个理想的选择。

  Ruckus酒店无线覆盖的理想选择
很多酒店的以太网线缆是分散的,并不是每个客房都可以使用。甚至在前台、会议室、会客区和商务中心等区域,以太网端口和无线连接都是有限的。
已经广泛部署了有线以太网的酒店通常需要更多的端口来连接新的IP设备,以支持新的多媒体服务。以太交换机可以在客房安装,但需要更多的电力支持,可以分散安装且经常需要定制家具来隐藏这些设备。这样做明显增加了成本、复杂性和管理问题。
根据行业预测,使用一根以太网线缆每个客房花费的成本是250美元。当Wi-Fi接入点、网络交换机及其他对管理计算机网络至关重要的设备增加时,每个房间的成本也将增加到500美元。Ruckus Wi-Fi墙面接入点可以有效节约一半的成本。
对于很多酒店经营者来讲,Wi-Fi只是有线网络的一种补充,酒店内覆盖的AP只是为客户提供基本的无线连接而已。但是,很多新服务和酒店设备倾向于将IP作为连接和管理的手段,这就迫切地需要一个统一的有线和无线网络。
Rice表示,“目前酒店的客人既需要有线,也需要无线高速互联网。现在的酒店要把这两个网络做得都很好比较困难,成本也比较高。很多酒店需要支持两种网络的设备,而且可以简便地安装到现有的架构之上。” 

    了解Ruckus Wi-Fi墙面接入点
Ruckus Wi-Fi墙面接入点作为一个独立的设备进行部署,由ZoneDirector无线局域网控制器或Ruckus FlexMaster Wi-Fi管理系统进行中央管理,降低了安装和管理有线及无线网络服务的成本和复杂性。
Ruckus Wi-Fi墙面接入点由一个独立POE连接供电,并提供4个10/100Mbps以太网口及两个上行以太网有线选配接口。此外,Ruckus Wi-Fi墙面接入点使用以太网供电为设备提供电源,如IP电话,通过一个独立的数字PBX透传(pass through)端口提供与数字电话的本地连接。

  Ruckus ZoneSwitch简介
Ruckus ZoneSwitch 4000系列是全托管、机架式、第2层、24端口10/100/1000Mbps以太网POE交换机。ZoneSwitch可提供全面安全,QoS和管理功能,提供4个双用途端口,支持可插拔光纤收发器,实现方便、灵活的网络上行链路连接。

  

  ZoneSwitch与Ruckus ZoneFlex接入点完全兼容,目前推出两款产品。ZoneSwitch 4224提供375W POE,所有端口均支持12个并发IEEE802.3at或24个并发802.3af连接。ZoneSwitch 4124提供180W POE,所有端口均支持12个并发IEEE 802.3af连接。Ruckus ZoneSwitch产品系列支持由Ruckus FlexMaster系统提供的集中式管理。

  

  借助新增的ZoneFlex Wi-Fi墙面接入点和以太网供电ZoneSwitch产品系列,Ruckus为酒店行业提供了前所未有的解决方案,包括室内及室外智能Wi-Fi接入点,可扩展中央控制器、多媒体视频适配器、长距离点对点桥接及远程Wi-Fi管理等。

  

  Ruckus上市时间

  Ruckus ZoneFlex 7025 Wi-Fi 墙面接入点将于今年第四季度开始供货,而Ruckus ZoneSwitch 4224 及4124将于今年第三季度开始供货 。