小编Bo *_*son的帖子

Python 2.5.4 - ImportError:没有名为etree.ElementTree的模块

我正在Windows上运行Python 2.5.4,并且在尝试导入ElementTree或cElementTree模块时出现错误.代码非常简单(我正在学习教程):

import xml.etree.ElementTree as xml

root = xml.Element('root')
child = xml.Element('child')
root.append(child)
child.attrib['name'] = "Charlie"
file = open("test.xml", 'w')
xml.ElementTree(root).write(file)
file.close()
Run Code Online (Sandbox Code Playgroud)

当我从cmd运行它时,我收到错误消息,但是当我从Python解释器直接尝试它时,我得到错误消息.

Traceback (most recent call last):  
File "C:\xml.py", line 31, in <module>
  import xml.etree.ElementTree as xml   
File "C:\xml.py", line 31, in <module>
  import xml.etree.ElementTree as xml
ImportError: No module named etree.ElementTree
Run Code Online (Sandbox Code Playgroud)

另外,我检查了C:\ Python25\Lib\xml\etree中的模块

python import elementtree

9
推荐指数
4
解决办法
3万
查看次数

编码x86指令前缀字节的顺序

我知道x86指令最多可以包含4个字节的前缀,例如Lock,rep,segment overrides等.

如果使用多个前缀,是否应该出现任何特定顺序?

x86 assembly

9
推荐指数
2
解决办法
1282
查看次数

将临时对象移动到矢量中

#include <iostream>
#include <utility>
#include <vector>

int i = 0;
struct A
{
    A() : j( ++i )
    {
        std::cout<<"constructor "<<j<<std::endl;
    }
    A( const A & c) : j(c.j)
    {
        std::cout<<"copy "<<j<<std::endl;
    }
    A( const A && c) : j(c.j)
    {
        std::cout<<"move "<<j<<std::endl;
    }
    ~A()
    {
        std::cout<<"destructor "<<j<<std::endl;
    }

    int j;
};

typedef std::vector< A > vec;

void foo( vec & v )
{
    v.push_back( std::move( A() ) );
}

int main()
{
    vec v;

    foo( v );
    foo( v …
Run Code Online (Sandbox Code Playgroud)

c++ object-lifetime c++11

9
推荐指数
2
解决办法
4048
查看次数

什么时候WPARAM从签名变为无签名?

在Delphi 6 WPARAM中声明为签名:

WPARAM = Longint;
Run Code Online (Sandbox Code Playgroud)

在Delphi 2010 WPARAM中声明为已签名:

WPARAM = INT_PTR;
Run Code Online (Sandbox Code Playgroud)

但在XE2中,它被声明为无符号:

WPARAM = UINT_PTR;
Run Code Online (Sandbox Code Playgroud)

官方的Windows定义是:

typedef UINT_PTR WPARAM;
Run Code Online (Sandbox Code Playgroud)

这与XE2匹配.


有谁知道改变是针对XE还是针对XE2?

delphi delphi-xe2

9
推荐指数
1
解决办法
809
查看次数

RabbitMQ在"确认"模式下的通道行为

我在理解RabbitMQ的确认方面遇到了一些麻烦,我从RabbitMQ看到以下解释:

笔记

如果代理在将所述消息写入磁盘之前崩溃,则代理会丢失持久消息.在某些情况下,这会导致经纪人以令人惊讶的方式行事.例如,考虑这种情况:

  • 客户端将持久性消息发布到持久队列

  • 客户端使用队列中的消息(注意消息是持久的,队列是持久的),但还没有消息,

  • 经纪人去世并重新启动,并且

  • 客户端重新连接并开始使用消息.

此时,客户端可以合理地假设该消息将再次传递.情况并非如此:重启导致代理丢失消息.为了保证持久性,客户应该使用确认.如果发布者的频道处于确认模式,则发布者不会收到丢失消息的确认消息(因为消费者没有得到它并且没有写入磁盘).

然后我使用这个http://hg.rabbitmq.com/rabbitmq-java-client/file/default/test/src/com/rabbitmq/examples/ConfirmDontLoseMessages.java做一些基本测试并验证确认,但得到一些奇怪的结果:

  1. waitForConfirmsOrDie方法不会阻止生产者,这与我的期望不同,我想waitForConfirmsOrDie将阻止生成器,直到所有消息都被激活或其中一个消息被nack'd.
  2. 我从发布者中删除了channel.confirmSelect()和channel.waitForConfirmsOrDie(),并将使用者从auto ack更改为手动ack,我将所有消息发布到队列并逐个使用消息,然后我在停止期间停止rabbitmq服务器消费过程,我现在期望的是,在重启Rabbitmq服务器后,左侧消息将丢失,因为该通道未处于确认模式,但在服务器重启后仍然可以看到队列中的所有其他消息.

由于我是RabbitMQ的新手,任何人都可以告诉我,我对确认理解的问题在哪里?

rabbitmq

9
推荐指数
1
解决办法
7846
查看次数

Tomcat落后于Apache和SSL

我一直在寻找,但无法找到以下情况的明确解决方案:

我们有一个web应用程序(Grails + Spring Security),它运行在tomcat,后面是apache.部分应用程序需要在https上运行,因此使用Spring Security Channel Security时,无论何时导航到安全的应用程序的一部分,Spring都会将您重定向到具有302状态代码的https.

现在,设置tomcat以了解https和证书,因此它知道如何处理ssl.实际上,当直接通过直接访问url和端口来直接命中tomcat时,所有的工作都是100%.

现在问题在于将apache放在tomcat之前.我们现在拥有的apache配置适用于应用程序的非安全部分.我们使用mod_jk来代理apache和tomcat.

但是,只要您尝试转到应用程序的安全部分,Spring就会重定向您,它会触及

<VirtualHost _default_:443> ... </VirtualHost>
Run Code Online (Sandbox Code Playgroud)

apache配置的一部分...这就是问题开始的地方.

根据我的阅读,apache可以通过mod_jk将ssl处理传递给tomcat.但我们似乎无法获得正确的配置.由于已经为ssl设置了tomcat,它知道证书的位置,并且Spring Security已经设置好了,我们希望tomcat能够处理所有的ssl,而apache只是将它伪装成tomcat.

这是可能的,还是我错过了什么?有没有人有一些明确的指示如何设置它?任何帮助将不胜感激.

我们使用的是Apache 2.2和tomat 7.0.27

谢谢

apache ssl grails tomcat spring-security

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

Scala + Play + Akka.是否需要Backbone.js?

我的后端在Postgres.我正在使用Scala来构建它的API.

每当数据库发生变化时,我都希望通知我的chrome扩展.我有几个问题:

  1. 我应该在这里实施websockets还是进行长时间的轮询?
  2. 如果是网络套接字,有什么好的例子说明我如何使用scala + play + Akka和javascript做到这一点?
  3. 我相信我要实现一种称为观察者模式的东西,如果数据有任何变化,它会通知我的chrome扩展.是否有任何其他模式我应该遵循以最小的DB开头完成这样的事情.
  4. 我应该使用Redis或RabbitMQ来处理这个特定的通知部分吗?

javascript postgresql scala redis google-chrome-extension

9
推荐指数
1
解决办法
1504
查看次数

9
推荐指数
1
解决办法
6508
查看次数

是否有可能在具有特定错误代码的线程退出时中断?

我想知道是否可以配置visual studio 2008调试器以在线程以精确错误代码(或至少任何非零值)退出时停止执行.我的应用程序使用了大量的线程,因此无法手动跟踪它们.

当程序中的任何线程命中"exit(X);"时,有没有办法告诉VS2008中断?(X与0不同)和显示源?

multithreading exit-code visual-studio-2008 visual-studio-debugging

9
推荐指数
1
解决办法
3016
查看次数

将mysql用户迁移到另一台服务器

我创建了一个mysqldump --all-databases 并将所有数据库传输到新服务器.它不起作用,因为debian-sys-maint用户密码不匹配.所以我改变了这个用户的密码.之后我重启了我的服务器并得到了这个错误.

第1行的错误1577(HY000):无法继续,因为事件调度程序使用的系统表在服务器启动时发现损坏ERROR 1547(HY000)第1行:mysql.proc的列计数错误.预计20,发现16.该表可能已损坏

我不知道在此之后会发生多少错误.所以我认为create dump只包含与我的应用程序相关联的数据库(mysqldump --databases).

现在如何迁移用户?有没有标准的方法?

更多信息:

New Server version: 5.1.63-0+squeeze1 (Debian)
Old Server version: 5.0.51a-24+lenny5 (Debian)
Run Code Online (Sandbox Code Playgroud)

mysql migration permissions debian mysqldump

9
推荐指数
1
解决办法
8373
查看次数