问题列表 - 第47843页

是否有可能在阻止并可能回调为Python的C函数之前释放GIL?

我正在包装一个执行阻塞操作(选择)的C函数,然后处理传入的消息.我的理解是,当一个C函数要阻塞时,在允许其他线程运行的同时调用它的正确方法是:

Py_BEGIN_ALLOW_THREADS                                                  
blocking_function();
Py_END_ALLOW_THREADS
Run Code Online (Sandbox Code Playgroud)

但是,它发生此函数将回调指针作为参数.在处理由C函数预处理的传入消息时调用此回调.我已经成功地将这个回调包装在一个调用的函数中PyEval_CallObject(),允许我传递一个Python回调.

现在我正在添加线程支持,我想知道是否可以同时:

  • 在调用此阻止操作之前释放GIL.
  • 让这个阻塞操作安全地回调到python解释器.

这会导致问题吗?如果是这样,有办法吗?

谢谢.

python gil python-multithreading python-bindings

4
推荐指数
1
解决办法
749
查看次数

使用Fancybox自动播放嵌入式Youtube视频

我在我的页面上有一个链接的图像,当点击它时会加载一个Fancybox模式框.它成功完成了这项工作,但我希望视频能够自动播放.如果我将YouTube网址设置为autoplay=1,则隐藏的DIV会在页面加载时在后台播放.

// Here is the linked image
<a id="inline" href="#video"><img src="someimage.jpg" alt="Description" /></a>

// Here is the hidden DIV
<div style="display:none">
  <div id="video">
    <iframe title="YouTube video player" width="640" height="390" src="###YOUTUBE LINK###rel=0&amp;hd=1&amp;autoplay=0" frameborder="0"></iframe>
  </div>
</div>

// Here is the script
<script type="text/javascript">
  $("a#inline").fancybox({
    'hideOnContentClick': true,
  });
</script>
Run Code Online (Sandbox Code Playgroud)

我的猜测是我需要做一些Bind()事件和字符串替换来改变autoplay=0,autoplay=1但我尝试了一些变化没有任何成功

有什么想法吗?

youtube jquery replace fancybox

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

.NET应用程序无法在Windows 7中打开

我在windows xp上使用visual studio 2010创建了一个非常简单的c#应用程序.它可以在我的机器上编译,运行和调试.我甚至构建了它以便发布并在我的机器上运行.exe和另一台Windows XP机器完全没问题.当我发送带有.exe文件的release文件夹并打开它时,没有任何反应!没有错误或任何东西,只是空白!

安装了.NET版本4框架

它是一个Windows窗体应用程序.

更新:OP给出以下答案之一的评论的详细信息:

嘿大家,谢谢你的想法.我复制了我在朋友的Windows 7机器事件日志中发现的内容,这就是它所说的:

应用程序:ePrescribing.exe Framework版本:v4.0.30319
描述:
由于未处理的
异常,进程已终止.异常信息:
System.IO.FileNotFoundException Stack:
位于
ePrescribing.frmApp.Main()
的ePrescribing.frmApp.EitialComponent()
ePrescribing.frmApp.Main()

   Faulting application name: ePrescribing.exe, version: 1.0.0.0,  
Run Code Online (Sandbox Code Playgroud)

时间戳:0x4d61e693错误模块
名称:KERNELBASE.dll,版本:
6.1.7600.16385,时间戳:0x4a5bdbdf异常代码:0xe0434352错误
偏移量:0x0000b727错误进程
id:0xb38错误应用程序启动
时间:0x01cbe1dbe6d4ba2d错误
应用程序路径:
C:\ Users\Duane\Downloads\ePrescribing.exe
错误模块路径:
C:\ Windows\syswow64\KERNELBASE.dll
报告ID:
266adc61-4dcf-11e0-8438-e0cb4e197cde -

   Fault bucket , type 0 Event Name: CLR20r3 Response: Not available  
Run Code Online (Sandbox Code Playgroud)

驾驶室ID:0问题签名:P1:
eprescribing.exe P2:1.0.0.0 P3:
4d61e693 P4:ePrescribing P5:1.0.0.0
P6:4d61e693 P7:28 P8:e P9:
System.IO.FileNotFoundException P10: -

我删除了唯一
一个我认为会有文件加载的区域
(对于picturebox加载profile.jpg)并且仍然得到相同的错误.有任何想法吗?

c# windows-7

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

C++中Vector的实现

我最近写了一个STL Vector的实现作为编程练习.该程序编译但我收到一个奇怪的错误说:

terminate called after throwing an instance of 'std::bad_alloc'
  what():  std::bad_alloc
Run Code Online (Sandbox Code Playgroud)

我以前从来没有想过这个错误,也不确定在我的实现中究竟应该改变什么才能使它正常运行.

有人可以查看我的代码,看看在这个特定情况下是否有任何东西突然出现错误?对不起,我不能更具体,我不知道在哪里看自己,提前谢谢.

#include <iostream>
#include <string>
#include <cassert>
#include <algorithm>

using namespace std;

template <class T>
class Vector
{
public:

   typedef T * iterator;

   Vector();
   Vector(unsigned int size);
   Vector(unsigned int size, const T & initial);
   Vector(const Vector<T> & v);      
   ~Vector();

   unsigned int capacity() const;
   unsigned int size() const;
   bool empty() const;
   iterator begin();
   iterator end();
   T & front();
   T & back();
   void push_back(const T & value); 
   void pop_back(); …
Run Code Online (Sandbox Code Playgroud)

c++ stl exception vector template-meta-programming

10
推荐指数
2
解决办法
5万
查看次数

需要在SubPlots之间为X轴标签添加空间,可能会删除轴槽口的标签

希望在绘制的图形之间添加垂直空间以允许X轴标签显示:

每个图形都需要有空间来显示当天,目前最后两个图形是唯一显示的图形,因为图形与它重叠.

同样好奇的是,我是否真的可以删除X轴的凹口标签,用于周四/周五标记的图形,即底部X轴是唯一显示的图形.对于Y轴也是如此,但只有左侧的图表显示了比例.

*遗憾的是,由于我没有足够的代表,我无法发布图片来展示这一点.

代码段:

import mathlib.pyplot as pyplot
fig = pyplot.figure()
ax1 = fig.add_subplot(4,2,1)
ax1.set_yscale('log')
ax2 = fig.add_subplot(4,2,2, sharex=ax1, sharey=ax1)
ax3 = fig.add_subplot(4,2,3, sharex=ax2, sharey=ax2)
ax4 = fig.add_subplot(4,2,4, sharex=ax3, sharey=ax3)
ax5 = fig.add_subplot(4,2,5, sharex=ax4, sharey=ax4)
ax6 = fig.add_subplot(4,2,6, sharex=ax5, sharey=ax5)
ax7 = fig.add_subplot(4,2,7, sharex=ax6, sharey=ax6)
ax1.plot(no_dict["Saturday"],'k.-',label='Saturday')
ax1.set_xlabel('Saturday')
ax1.axis([0,24,0,10000])
pyplot.suptitle('Title')
pyplot.xlabel('Hour in 24 Hour Format')
ax2.plot(no_dict["Sunday"],'b.-',label='Sunday')
ax2.set_xlabel('Sunday')
...
Run Code Online (Sandbox Code Playgroud)

太拥挤

python matplotlib

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

UIScrollView的contentOffset

我怎样才能获得contentOffset的x位置?

这是我的代码,但在日志中总是抛出0

- (void)adjustAreaScroll:(NSNotification *)notification
{
    int value = [[notification object] intValue];
    NSLog(@"adjustAreaScroll, %i", value);

    switch (value) {
        case 0:
            [topScroll setContentOffset:CGPointMake(0, 0)];
            break;
        case 1:
            [topScroll setContentOffset:CGPointMake(1024, 0)];
            break;
        case 2:
            [topScroll setContentOffset:CGPointMake(2048, 0)];
            break;
        case 3:
            [topScroll setContentOffset:CGPointMake(3072, 0)];
            break;
    }
    NSLog(@"target position -----> %i", self.topScroll.contentOffset.x);
}
Run Code Online (Sandbox Code Playgroud)

iphone objective-c uiscrollview ipad ios

2
推荐指数
1
解决办法
7605
查看次数

PHP:拆分字符串

如何.在PHP中使用分隔符拆分字符串?例如,如果我有字符串"a.b",我该怎么办"a"

php string split

67
推荐指数
5
解决办法
14万
查看次数

C++映射迭代器问题

为什么这个代码有问题(在visual studio 2010中)?

#include <iostream>
#include <fstream>
#include <string>
#include <map>

using namespace std;

int main() {

    map<string,int> map;
    map<string,int>::iterator iter = map.begin();
}
Run Code Online (Sandbox Code Playgroud)

它只是告诉我迭代器定义中存在一个问题(类模板"std :: iterator"的参数列表缺失),但是我看到了这样写的样本.

c++ iterator

0
推荐指数
2
解决办法
5100
查看次数

你可以在使用Internet Explorer的过滤器属性生成的渐变中使用rgba颜色吗?

Internet Explorer的filterCSS属性(-ms-filter来自IE 8)允许您执行CSS渐变,有点像-webkit-gradient-moz-gradient属性(参见例如问题213750).

但是,语法似乎不允许rgba颜色,因此您不能执行从颜色到透明的渐变.

有没有办法在IE中实现以透明度结束的渐变?

css internet-explorer gradient

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

拆分网址的路径部分

我找不到任何东西,所以我只想拿一个网址,然后把它分开并把它变成关键值对.

$url = 'http://domain.com/var/1/var2/2';
Run Code Online (Sandbox Code Playgroud)

我目前在使用parse_url后在路径上使用array_chunk

$u = parse_url($url);
$decoded = array_chunk($u['path'],2);
Run Code Online (Sandbox Code Playgroud)

但它回来了

array (
   [0] => array (
       [0] => var
       [1] => 1
   ),
   [1] => array (
       [0] => var2
       [1] => 2
   )
)
Run Code Online (Sandbox Code Playgroud)

我想要的是什么

array (
    [var] => 1,
    [var2] => 2
)
Run Code Online (Sandbox Code Playgroud)

是否有Zend Framework方法可以将其解码为数组?

php zend-framework

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