今天,当我尝试在模拟器中运行我的应用程序时,它只是告诉我
Unable to run app in Simulator
An error was encountered while running
(Domain = NSPOSIXErrorDomain, Code = 22)
Run Code Online (Sandbox Code Playgroud)
错误对话框如下所示:

我尝试了很多东西:
以上都不适用.我查看了日志,我发现这些记录与此问题有关
2014/10/15 9:09:40.964 com.apple.CoreSimulator.CoreSimulatorService [979]:错误Domain = com.apple.CoreSimulator.SimError Code = 146"无法在当前状态下查找:关闭"UserInfo = 0x7f96c861d000 {NSLocalizedDescription =无法在当前状态下查找:关机}
2014/10/15 9:09:40.964 Xcode [1983]:[MT] iPhoneSimulator:无法连接到"com.apple.instruments.deviceservice.lockdown"(错误域= com.apple.CoreSimulator.SimError Code = 146"无法在当前状态下查找:关闭"UserInfo = 0x7fcf6fc24190 {NSLocalizedDescription =无法在当前状态下查找:关机}"
2014/10/15 9:09:40.980 com.apple.CoreSimulator.CoreSimulatorService [979]:Error Domain = com.apple.CoreSimulator.SimError Code = 146"无法在当前状态下查找:Shutdown"UserInfo = 0x7f96c861d000 {NSLocalizedDescription =无法在当前状态下查找:关机}
2014/10/15 9:09:42.351 launchd_sim [2047]:断言失败:13F34:libxpc.dylib + 29453 [75E30F22-514B-3A20-B82C-EDA43AF5C35C]:0x8d
2014/10/15 9:09:42.362 com.apple.CoreSimulator.CoreSimulatorService [979]:无法注册服务com.apple.coreservices.lsuseractivity.simulatorsupport:无法查找com.apple.coreservices.lsuseractivity.simulatorsupport:0x44e
我还发现其他一些人在这里有同样的问题:https: …
我尝试使用py2exe打包一个Twisted程序,但是一旦我运行了我构建的exe文件,我就得到了一个"No module named resource"错误.
我发现py2exe说:
以下模块似乎缺失['FCNTL','OpenSSL','email.Generator','email.Iterators','email.Utils','pkg_resources','pywintypes','resource','win32api', 'win32con','win32event','win32file','win32pipe','win32process','win32security']
那么我该如何解决这个问题呢?
谢谢.
我正在使用Python连接gstreamer应用程序.我得到一个LinkError与以下代码:
import pygst
pygst.require('0.10')
import gst
import pygtk
pygtk.require('2.0')
import gtk
# this is very important, without this, callbacks from gstreamer thread
# will messed our program up
gtk.gdk.threads_init()
def main():
pipeline = gst.Pipeline('pipleline')
filesrc = gst.element_factory_make("filesrc", "filesrc")
filesrc.set_property('location', 'C:/a.mp3')
decode = gst.element_factory_make("decodebin", "decode")
convert = gst.element_factory_make('audioconvert', 'convert')
sink = gst.element_factory_make("autoaudiosink", "sink")
pipeline.add(filesrc, decode, convert, sink)
gst.element_link_many(filesrc, decode, convert, sink)
pipeline.set_state(gst.STATE_PLAYING)
gtk.main()
main()
Run Code Online (Sandbox Code Playgroud)
而错误:
ImportError: could not import gio
Traceback (most recent call last):
File "H:\workspace\ggg\src\test2.py", line 37, in <module> …Run Code Online (Sandbox Code Playgroud) 我有一个python项目,我们称之为foobar,setup.py项目根目录中有一个脚本,就像所有Python项目一样.例如
setup.py文件内容:
from ez_setup import use_setuptools
use_setuptools()
from setuptools import setup, find_packages
setup(
name='foobar',
version='0.0.0',
packages=find_packages(),
install_requires=[
'spam==1.2.3',
'eggs>=4.5.6',
],
)
Run Code Online (Sandbox Code Playgroud)
我需要使用Python从该setup.py文件中获取依赖项信息.我想要的部分是
[
'spam==1.2.3',
'eggs>=4.5.6',
]
Run Code Online (Sandbox Code Playgroud)
在上面的例子中.我不想安装这个包,我只需要依赖项信息.当然,我可以使用正则表达式来解析它,但那会很难看,我也可以使用Python AST来解析它,但我认为应该已经有一些工具可以做到这一点.这样做的最佳方法是什么?
我正在分析我的扭曲服务器.它使用的内存比我预期的多得多.它的内存使用量会随着时间的推
ps -o pid,rss,vsz,sz,size,command
PID RSS VSZ SZ SZ COMMAND
7697 70856 102176 25544 88320 twistd -y broadcast.tac
Run Code Online (Sandbox Code Playgroud)
如您所见,它的成本为102176 KB,即99.78125 MB.我使用扭曲的沙井中的孔雀鱼来观察内存使用情况.
>>> hp.heap()
Partition of a set of 120537 objects. Total size = 10096636 bytes.
Index Count % Size % Cumulative % Kind (class / dict of class)
0 61145 51 5309736 53 5309736 53 str
1 27139 23 1031596 10 6341332 63 tuple
2 2138 2 541328 5 6882660 68 dict (no owner)
3 7190 …Run Code Online (Sandbox Code Playgroud) 我正在开发一个多线程应用程序,它正在陷入僵局.
我正在使用Visual C++ Express 2008来跟踪程序.一旦发生死锁,我就暂停程序并跟踪.我发现当发生死锁时,我的C++扩展中会有两个名为python的线程.
所有这些都在python代码中使用Queue,所以我猜死锁可能是由Queue引起的.但是,一旦扩展进入python代码,我从VC++调试器中看不到asm代码和二进制文件.
我想知道有没有办法在我暂停程序后转储python代码的调用堆栈?我怎么知道线程中的锁是什么造成了死锁?
我有一个用Scons构建的C++项目.起初我只有优化版本才能编译,它运行正常.然后我还需要一个调试版本,然后我为它添加另一个环境.这是Scons代码:
env = Environment()
opt = env.Clone(CCFLAGS=['-pthread', '-O3', '-Wall'])
opt_objs = opt.Glob('src/*.cpp')
prog = opt.Program('prog', opt_objs)
dbg = env.Clone(CCFLAGS=['-pthread', '-Wall', '-g', '-O0'])
dbg_objs = dbg.Glob('src/*.cpp')
dbg_prog = dbg.Program('dbg_prog', dbg_objs)
Run Code Online (Sandbox Code Playgroud)
使用此代码,我遇到了错误:
scons: *** Two environments with different actions were specified for the same target:
src/CometReadService.o
Run Code Online (Sandbox Code Playgroud)
正如您所看到的那样,由opt.Glob('src/.cpp')和dbg.Glob('src / .cpp')创建的那些.o文件目标完全相同.通过阅读文档Multiple Construction Environments我知道我可以将对象重命名为"opt.Object('xxx-opt','xxx.c')",但是,它是Glob而不是Object.我怎么解决这个问题?
我在考虑在哪里写一个操作的日志记录.这是两种不同的风格.第一个,在操作之前写入日志.
之前:
log.info("Perform operation XXX")
operation()
Run Code Online (Sandbox Code Playgroud)
这里有不同的风格,操作后写日志.
后:
operation()
log.info("Operation XXX is done.")
Run Code Online (Sandbox Code Playgroud)
使用之前的样式,日志记录说明现在要做什么.这种风格的专家是,当出现问题时,开发人员可以轻松地检测到它,因为他们知道程序现在在做什么.但是问题是你不确定操作是否正确完成,如果操作中出现错误,例如,函数调用在那里被阻塞而且永远不会返回,你不可能通过读取日志记录来了解它.使用后续样式,您确定操作已完成.
当然,我们可以将这两种风格混合在一起
都:
log.info("Perform operation XXX")
operation()
log.info("Operation XXX is done.")
Run Code Online (Sandbox Code Playgroud)
但我觉得这有点冗长,它会产生双重记录记录.所以,这是我的问题 - 什么是良好的伐木风格?我想知道你怎么想.
我正在拧一个python脚本来运行一些命令.有些命令要求用户输入密码,我确实尝试在他们的stdin中输入数据,但是它不起作用,这里有两个简单的python程序代表问题
input.py
import getpass
print raw_input('text1:')
print getpass.getpass('pass1:')
print getpass.getpass('pass2:')
Run Code Online (Sandbox Code Playgroud)
put_data.py
import subprocess
import getpass
def run(cmd, input=None):
stdin=None
if input:
stdin=subprocess.PIPE
p = subprocess.Popen(cmd, shell=True, stdin=stdin)
p.communicate(input)
if p.returncode:
raise Exception('Failed to run command %r' % cmd)
input ="""text1
password1
password2
"""
run('python test.py', input)
Run Code Online (Sandbox Code Playgroud)
这是输出
[guest@host01 ~]# python put_data.py
text1:text1
pass1:
Run Code Online (Sandbox Code Playgroud)
它只是停在pass1字段上.这是问题,为什么我不能将数据放到stdin来将数据提供给密码字段?如何将数据写入密码字段?
我有很多文本文件,它们的总大小约为300GB~400GB.它们都是这种格式
key1 value_a
key1 value_b
key1 value_c
key2 value_d
key3 value_e
....
Run Code Online (Sandbox Code Playgroud)
每一行由一个键和一个值组成.我想创建一个数据库,可以让我查询一个键的所有值.例如,当我查询key1时,返回value_a,value_b和value_c.
首先,将所有这些文件插入数据库是一个大问题.我尝试使用LOAD DATA INFILE语法将几个GB大小的块插入到MySQL MyISAM表中.但似乎MySQL不能利用多核来插入数据.它和地狱一样慢.所以,我认为MySQL对于这么多的记录来说不是一个好的选择.
此外,我需要定期,每周甚至每天更新或重新创建数据库,因此,插入速度对我来说很重要.
单个节点不可能有效地进行计算和插入,为了提高效率,我认为最好平行地在不同节点中执行插入.
例如,
node1 -> compute and store 0-99999.txt
node2 -> compute and store 10000-199999.txt
node3 -> compute and store 20000-299999.txt
....
Run Code Online (Sandbox Code Playgroud)
所以,这是第一个标准.
标准1.以分布式批处理方式快速插入速度.
然后,正如您在文本文件示例中所看到的,最好为不同的值提供多个相同的键.就像key1映射到示例中的value_a/value_b/value_c一样.
标准2.允许多个密钥
然后,我将需要查询数据库中的键.不需要关系或复杂的连接查询,我只需要简单的键/值查询.重要的部分是同一个值的多个键
标准3.简单快速的键值查询.
我知道有HBase/Cassandra/MongoDB/Redis ....等等,但我不熟悉所有这些,不确定哪一个符合我的需求.所以,问题是 - 使用什么数据库?如果它们都不符合我的需求,我甚至计划建立自己的需求,但需要付出努力:/
谢谢.