我正在使用NSUSerDefaults存储用户首选项.我记得在某处将键设置为常量是一个好主意 - 我同意.以下代码是我目前拥有的代码:
[[NSUserDefaults standardUserDefaults]
setObject:[NSNumber numberWithInt:polygon.numberOfSides]
forKey:@"polygonNumberOfSides"];
Run Code Online (Sandbox Code Playgroud)
我尝试将其更改为:
@implementation Controller
NSString const *kPolygonNumberOfSides = @"polygonNumberOfSides";
-(void)savePolygonInfo {
[[NSUserDefaults standardUserDefaults]
setObject:[NSNumber numberWithInt:polygon.numberOfSides]
forKey:kPolygonNumberOfSides];
}
Run Code Online (Sandbox Code Playgroud)
虽然这确实有效,但它会产生" warning: passing argument 1 of 'objectForKey:' discards qualifiers from pointer target type
".我很想让我的代码免受编译器警告的影响.我该如何修复此警告?
我正在尝试从Ruby中的UNIX套接字进行连接,读取和写入.它是haproxy使用的stats套接字.
我的代码如下:
require 'socket'
socket = UNIXSocket.new("/tmp/haproxy.stats.socket")
# First attempt: works
socket.puts("show stat")
while(line = socket.gets) do
puts line
end
# Second attemp: fails
socket.puts("show stat")
while(line = socket.gets) do
puts line
end
Run Code Online (Sandbox Code Playgroud)
它第一次成功,但在第二次尝试失败.我不知道为什么.
# pxname,svname,qcur,qmax,scur,smax,slim,stot,bin,bout,dreq,dresp,ereq,econ,eresp,wretr,wredis,status,weight,act,bck,chkfail,chkdown,lastchg,downtime,qlimit,pid,iid,sid,throttle,lbtot,tracked,type,rate,rate_lim,rate_max,check_status,check_code,check_duration,hrsp_1xx,hrsp_2xx,hrsp_3xx,hrsp_4xx,hrsp_5xx,hrsp_other,hanafail,req_rate,req_rate_max,req_tot,cli_abrt,srv_abrt,
stats,FRONTEND,,,0,0,2000,0,0,0,0,0,0,,,,,OPEN,,,,,,,,,1,1,0,,,,0,0,0,0,,,,0,0,0,0,0,0,,0,0,0,,,
stats,BACKEND,0,0,0,0,2000,0,0,0,0,0,,0,0,0,0,UP,0,0,0,,0,22,0,,1,1,0,,0,,1,0,,0,,,,0,0,0,0,0,0,,,,,0,0,
legacy_socket,FRONTEND,,,0,0,1000,0,0,0,0,0,0,,,,,OPEN,,,,,,,,,1,2,0,,,,0,0,0,0,,,,0,0,0,0,0,0,,0,0,0,,,
all,FRONTEND,,,0,0,10000,0,0,0,0,0,0,,,,,OPEN,,,,,,,,,1,3,0,,,,0,0,0,0,,,,0,0,0,0,0,0,,0,0,0,,,
socket_backend,socket,0,0,0,0,200,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,22,22,,1,4,1,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
socket_backend,socket,0,0,0,0,200,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,22,22,,1,4,2,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
socket_backend,socket,0,0,0,0,200,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,22,22,,1,4,3,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
socket_backend,socket,0,0,0,0,200,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,22,22,,1,4,4,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
socket_backend,socket,0,0,0,0,200,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,22,22,,1,4,5,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
socket_backend,socket,0,0,0,0,200,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,22,22,,1,4,6,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
socket_backend,socket,0,0,0,0,200,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,22,22,,1,4,7,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
socket_backend,socket,0,0,0,0,200,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,21,21,,1,4,8,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
socket_backend,socket,0,0,0,0,200,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,21,21,,1,4,9,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
socket_backend,socket,0,0,0,0,200,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,21,21,,1,4,10,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
socket_backend,BACKEND,0,0,0,0,0,0,0,0,0,0,,0,0,0,0,DOWN,0,0,0,,1,21,21,,1,4,0,,0,,1,0,,0,,,,0,0,0,0,0,0,,,,,0,0,
api_backend,api,0,0,0,0,200,0,0,0,,0,,0,0,0,0,UP,1,1,0,0,0,22,0,,1,5,1,,0,,2,0,,0,L4OK,,0,0,0,0,0,0,0,0,,,,0,0,
api_backend,api,0,0,0,0,1,0,0,0,,0,,0,0,0,0,UP,1,1,0,0,0,22,0,,1,5,2,,0,,2,0,,0,L4OK,,0,0,0,0,0,0,0,0,,,,0,0,
api_backend,api,0,0,0,0,1,0,0,0,,0,,0,0,0,0,DOWN,1,1,0,0,1,21,21,,1,5,3,,0,,2,0,,0,L4CON,,0,0,0,0,0,0,0,0,,,,0,0,
api_backend,BACKEND,0,0,0,0,0,0,0,0,0,0,,0,0,0,0,UP,2,2,0,,0,22,0,,1,5,0,,0,,1,0,,0,,,,0,0,0,0,0,0,,,,,0,0,
www_backend,ruby-www,0,0,0,0,10000,0,0,0,,0,,0,0,0,0,UP,1,1,0,0,0,22,0,,1,6,1,,0,,2,0,,0,L4OK,,0,0,0,0,0,0,0,0,,,,0,0,
www_backend,BACKEND,0,0,0,0,0,0,0,0,0,0,,0,0,0,0,UP,1,1,0,,0,22,0,,1,6,0,,0,,1,0,,0,,,,0,0,0,0,0,0,,,,,0,0,
/Users/Olly/Desktop/haproxy_stats.rb:14:in `write': Broken pipe (Errno::EPIPE)
from /Users/Olly/Desktop/haproxy_stats.rb:14:in `puts'
from /Users/Olly/Desktop/haproxy_stats.rb:14
Run Code Online (Sandbox Code Playgroud)
问题是什么?有没有很好的参考使用UNIX套接字和Ruby?
是一种在Go中进行恒定时间字符串比较的内置方法吗?
Devise.secure_compare
当我在Ruby中需要这个功能时,我已经使用过这个方法.
我想实现一个3窗格的垂直NSSplitView
(非常类似于Mail.app).我不确定从哪里开始.我很确定我需要实现一个NSSplitViewDelegate
,但我不确定哪些方法和/或它们的实现.
我想要的布局如下:
+----------+------------------+------------------------------------+
| | | |
| | | |
| | | |
| | | |
| Pane 1 | Pane 2 | Pane 3 |
| | | |
| | | |
| | | |
| | | |
| | | |
+----------+------------------+------------------------------------+
Run Code Online (Sandbox Code Playgroud)
我想为每个窗格实现以下约束:
任何指针都将非常感激.
我正在使用NSSearchField通过Internet运行查询并在表格视图中显示结果.在查询运行时,我想在NSSearchField中显示进度指示器?我想我以前在另一个应用程序中看到过这个.
是否有可用于实现此目的的开源组件?
我该怎么做呢?什么是最好的方法?有什么陷阱?
是否可以同时NSDateFormatter
解析带有和不带毫秒的ISO8601日期.
我有两个由API返回的日期格式,有时它们包含毫秒,有时不包括.
例如,我可能有2013-07-23T13:45:02Z
和2013-07-23T13:45:02.677Z
.对于前者设置该dateFormat
属性@"yyyyMMdd'T'HHmmss'Z'"
工作正常.
是否有一种格式可用于解析后者,如果存在,可选择解析毫秒数?
我编写了一个应用程序来将某些文件复制到某个位置.它允许用户选择始终位于AFP共享上的目的地.这是通过NSOpenPanel完成的.返回的URL是:file://localhost/Volumes/Oliver%20Legg's%20Backup/
.
我想要完成的是当应用程序启动时,如果未安装AFP共享,我希望它自动安装它.做这个的最好方式是什么?
Get Info命令将服务器列为:afp://Power Mac G5._afpovertcp.local/Oliver%20Legg's%20Backup
.如何以编程方式从文件URL获取此URL?我想如果我能获得该URL,我可以使用FSMountServerVolumeAsync挂载它.这是最好的(最简单,最抽象的)API吗?
cocoa ×5
objective-c ×3
macos ×2
afp ×1
datetime ×1
go ×1
nssplitview ×1
ruby ×1
unix-socket ×1