小编dim*_*ish的帖子

pdb无法在另一个线程中断?

考虑这个多线程程序:

import threading

class SomeThread(threading.Thread):
  def run(self):
    a = 1
    print a

def main():
  print 'hola'
  someThread = SomeThread()
  someThread.start()

if __name__ == '__main__':
  main()
Run Code Online (Sandbox Code Playgroud)

当我用pdb调试这个程序时,在提示符下我首先在两个print语句的每一个上设置一个断点.然后我继续 pdb打破了print 'hola'.我再次继续看到打印在另一个线程中的效果,但pdb不会中断.

帮助命令没有列出任何东西来切换像gdb这样的线程上下文......所以......在一个线程上下文中是否只能设置一个在另一个上下文中跳转的断点?

python multithreading breakpoints pdb

15
推荐指数
1
解决办法
1万
查看次数

不能在MinGW/msys shell或终端中键入"e"或"P"

我已经成功安装并使用过去的MinGW和msys来编译和链接Windows可执行文件.在32位Vista的全新安装(与之前的成功相同的平台)上,我遇到了一些令人抓狂的行为:当我在提供的shell环境中输入小写的"e"或大写的"P"时,我得到了一声低沉的嘟嘟声,但没有人物!意思是我不能输入"make"或"echo",然后运行这些命令.它成为:mak-BEEP!

当你通过安装程序生成的快捷方式调用msys时,打开的shell中没有'e'BEEPing,而在shell中导航到c:\ msys\1.0\bin并且只需双击bash.exe,sh .exe,rxvt.exe(实际上它比一个清脆的BEEP有更多的低沉噪声粉扑),但总是小写的'e'和大写'P'不会回应终端(或shell?显然我不是掌握这些术语之间的差异).

我尝试过自动MinGW和msys安装程序,并在同一端进行全新的手动安装.

我不太了解shell,或者他们的环境在启动时如何演变,所以我不知道从哪里开始寻找这种古怪行为的来源.

shell terminal mingw msys

7
推荐指数
1
解决办法
1925
查看次数

GIMP 方案脚本中的 number->string 和相关程序

我对 GIMP 脚本中的字符串到数字和数字到字符串的转换感到沮丧。我在 Windows Vista 中运行 GIMP 2.6.8。

我知道 GIMP 的内部 Scheme 实现会随着版本而变化,我似乎无法确定文档。据我所知,GIMP 的 Scheme 是 TinyScheme 的一个子集和/或支持 R5RS 标准程序。无论如何,当我想尝试新的东西时,我通常只是在打包的脚本目录中查看示例,因为这肯定会起作用,对吧?

例如,grid-system.scm 带有最新的 GIMP 版本并具有表达式,

(string-append (number->string obj) " ")
Run Code Online (Sandbox Code Playgroud)

这正是我想要的。但是,如果我在自己的脚本中使用 number->string,或者甚至在 GIMP 的脚本控制台中输入它(这是我通常测试我想做的新东西的方式),它会告诉我 number->string 是一个未绑定的变量:

> (number->string 3)
Run Code Online (Sandbox Code Playgroud)

Error: eval: unbound variable: number->string

来自 R5RS 的其他标准程序可以正常工作:

> (string-append "frust" "rated")

"frustrated"

所以,

1) 除了像搜索 GIMP 的源代码这样激烈的东西之外,是否还有一些当前 GIMP Scheme 脚本的潜在文档?

2) 我可以使用 GIMP 控制台来列出所有已定义的过程以找到我需要的东西吗?

3) 有没有其他人确认 number->string 没有为当前的 Windows 版本定义,即使它出现在打包的脚本中?我的网络搜索没有发现任何相关问题,并且完全卸载所有 GIMP 版本,回到最新版本让我陷入同样的​​困境。

scripting scheme gimp script-fu

3
推荐指数
1
解决办法
5885
查看次数