问题列表 - 第37405页

C++线程池

什么是C++在生产代码中使用的线程池的良好开源实现(类似于boost)?

请提供您自己的示例代码或示例代码使用的链接.

c++ multithreading boost boost-thread threadpool

42
推荐指数
3
解决办法
5万
查看次数

如何在Delphi中没有MainForm?

我一直试图让我的应用程序中的一些无模式窗体出现在任务栏上 - 利用Windows 7中新的有用任务栏.

在任务栏上存在表单之前,VCL有许多问题需要撤消.

但最后一个问题是,最小化VCL指定主窗体的形式会导致应用程序中的所有窗口消失.

十年前,Peter Below(TeamB)记录了这些问题,并尝试解决这些问题.但是有些问题无法解决.这些问题在VCL本身内部如此深入,实际上不可能使Delphi应用程序正常运行.

这一切都源于您在工具栏上看到的按钮不代表应用程序窗口的事实; 它代表了TApplications窗口,它是隐藏的,从未见过.然后是应用程序MainForm,然后充满了特殊的能力,如果被最小化,那么它指示应用程序隐藏自己.

在我看来,如果我能做到的话

Application.MainForm := nil;
Run Code Online (Sandbox Code Playgroud)

然后所有这些错误都会消失.应用程序可以有其隐藏的窗口,同时我将覆盖应用程序中的所有其他表单,包括我的主窗体,其中:

procedure TForm2.CreateParams(var params: TCreateParams ); 
begin 
   inherited CreateParams(params); 
   params.ExStyle := params.ExStyle or WS_EX_APPWINDOW; 
end; 
Run Code Online (Sandbox Code Playgroud)

但在Delphi中,该Application.MainForm属性是只读的.

我怎么能MainForm在Delphi中没有?

也可以看看

delphi taskbar delphi-5 windows-7

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

根据条件渲染,rails

我有一个显示嵌套关系的表单.渲染嵌套子对象的调用如下所示:

<% if @fpimgblocks %>
??<% f.fields_for @fpimgblocks do |builder| %>
????<%= render 'fpimgblock_fields', :f => builder %>
??<% end %>
<% end %>
Run Code Online (Sandbox Code Playgroud)

@fpimgblocks是一个查找的结果,我已经验证了没有结果,所以我希望这不会渲染.但是,即使未初始化对象,也会呈现局部.然后,当我提交表单时,这会返回一个nil_class错误.

if语句中的语法是错误还是什么?我已经尝试过更改为"除非@ fpimgblocks.nil?但没有变化.

ruby ruby-on-rails

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

自定义字段的to_python不起作用? - Django

我正在尝试实现加密的char字段.


我正在使用pydes进行加密

这就是我所拥有的:

from pyDes import triple_des, PAD_PKCS5
from binascii import unhexlify as unhex
from binascii import hexlify as dohex

class BaseEncryptedField(models.CharField):

    def __init__(self, *args, **kwargs):
        self.td = triple_des(unhex('c35414909168354f77fe89816c6b625bde4fc9ee51529f2f'))
        super(BaseEncryptedField, self).__init__(*args, **kwargs)

    def to_python(self, value):
        return self.td.decrypt(unhex(value), padmode=PAD_PKCS5)

    def get_db_prep_value(self, value):
        return dohex(self.td.encrypt(value, padmode=PAD_PKCS5))
Run Code Online (Sandbox Code Playgroud)

该字段成功加密保存在数据库中

但是当退出时它不会打印出解密版本


有任何想法吗?

python encryption django django-models

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

可能的Java泛型(模板)专业化(覆盖具有特定类型的模板类型)

我想知道在Java中专门化泛型类型的选项是什么,即在模板化的类中对某些类型进行特定的覆盖.

在我的例子中,我是一个泛型类(类型为T)通常返回null,但返回""(空字符串),当T是String类型时,或者当它是Integer类型时返回0(零)等.

仅提供方法的类型特定重载会产生"方法不明确"错误:

例如:

public class Hacking {

  public static void main(String[] args) {
    Bar<Integer> barInt = new Bar<Integer>();
    Bar<String> barString = new Bar<String>();

    // OK, returns null
    System.out.println(barInt.get(new Integer(4)));

    // ERROR: The method get(String) is ambiguous for the type Bar<String>
    System.out.println(barString.get(new String("foo")));
  }

  public static class Bar<T> {

    public T get(T x) {
      return null;
    }

    public String get(String x) {
      return "";
    }  
  }
}
Run Code Online (Sandbox Code Playgroud)

是使用特定类型子类化泛型类的唯一选项(请参阅以下示例中的StringBar?

  public static void main(String[] args) {
    Bar<Integer> barInt = new Bar<Integer>();
    StringBar …
Run Code Online (Sandbox Code Playgroud)

java generics

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

如何在另一个存储过程中使用sp_configure?

我试图在另一个存储过程中使用Sp_configure Proc,但是收到错误.

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE Test01
AS
BEGIN
    SET NOCOUNT ON;

    sp_configure 'show advanced options', 1
    RECONFIGURE
    GO
    sp_configure 'Ad Hoc Distributed Queries', 1
    RECONFIGURE
    Go
END
GO
Run Code Online (Sandbox Code Playgroud)

错误来了: -

消息102,级别15,状态1,过程Test01,行6'sp_configure'附近的语法不正确.配置选项'Ad Hoc Distributed Queries'从1更改为1.运行RECONFIGURE语句进行安装.消息102,级别15,状态1,行1'END'附近的语法不正确.

sql-server sql-server-2005

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

在更新分离的对象时,Hibernate可以删除孤立的集合吗?

我知道,删除孤立的子对象是SO一个常见的问题以及人们对Hibernate一个共同的问题,那还算标准答案是,以确保你有一些变化cascade=all,delete-orphan或者cascade=all-delete-orphan对孩子的集合.

我希望能够让Hibernate检测到子集合已从父对象中清空/删除,并在更新父对象时从子数据库中删除子表中的行.例如:

Parent parent = session.get(...);
parent.getChildren().clear();
session.update(parent);
Run Code Online (Sandbox Code Playgroud)

我目前的Parent班级映射如下:

<bag name="children" cascade="all-delete-orphan">
    <key column="parent_id" foreign-key="fk_parent_id"/>
    <one-to-many class="Child"/>
</bag>
Run Code Online (Sandbox Code Playgroud)

在更新附加对象时,这对我来说很好,但是我有一个用例,我们希望能够获取一个分离的对象(由远程客户端通过HTTP/JSON发送到我们的API方法),并将其直接传递给Hibernate会话 - 允许客户端能够以他们喜欢的方式操纵父对象并保持更改.

调用session.update(parent)我的分离对象时,子表中的行是孤立的(FK列设置为null)但不删除.请注意,当我调用时session.update(),这是Hibernate Session第一次看到此对象实例 - 我没有以任何其他方式重新附加或合并对象与Session.我依靠客户端传递其标识符对应于数据库中实际对象的对象.例如,我的API服务方法中的逻辑是这样的:

String jsonString = request.getParameter(...);
Parent parent = deserialize(jsonString);
session.update(parent);
Run Code Online (Sandbox Code Playgroud)

是否有可能Hibernate在传递给分离的父对象时检测孤立的子集合session.update(parent)?或者我是否以某种方式错误地使用了分离的对象?

我希望我可以避免与Hibernate进行任何复杂的交互,以便将更改保存到分离的实例中.在调用之后,我的API方法无需进一步修改分离的对象session.update(parent),此方法仅负责持久保存远程客户端应用程序所做的更改.

java hibernate hibernate-cascade

16
推荐指数
2
解决办法
8534
查看次数

为什么每个人都讨厌ViewData?

我想知道,为什么每个人都非常讨厌 ViewData?
我发现它非常有用和方便.我告诉你原因:通常每个控制器动作都有它自己的ViewModel,因此它只使用一次,我发现每次我需要添加额外的数据部分来修改ViewData类时非常繁琐(向类中添加额外的字段通常会导致修改它的构造函数).相反,我可以写入控制器

ViewData["label"] = someValue;
// in mvc 3 even better:
ViewData.Label = someValue
Run Code Online (Sandbox Code Playgroud)

在视野中

<%= ViewData["label"] %>
<%-- mvc 3: --%>
<%= ViewData.Label %>
Run Code Online (Sandbox Code Playgroud)

或者对于复杂类型:

<% ComplexType t = (ComplexType)ViewData["label"]; %> // and use all benefits of strong typing 
<%= t.SomeProperty %>
Run Code Online (Sandbox Code Playgroud)

编写控制器操作当我需要添加一些数据来查看时,我不必切换到另一个类.对我来说这是一个很大的好处:不要让你的项目充满无意义的课程,并在他们和其他人之间切换.
我同意使用"魔术字符串"可能导致编译器无法捕获的错误,但这些错误本地化在代码的很小一部分中,并且可以非常快速地发现.此外,您如何看待使用动态语言(rails,django)的人在没有强力打字的情况下生活?)

您对使用ViewData有何看法?

asp.net asp.net-mvc

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

为md5哈希分配一个数字(1到9之间)

有一个像md5哈希:

md5("test") = "098f6bcd4621d373cade4e832627b4f6"
Run Code Online (Sandbox Code Playgroud)

每次将md5哈希值传递给它时,如何编写一个函数来返回1到9之间的数字?数字必须始终相同,即myfunc("098f6bcd4621d373cade4e832627b4f6")应始终返回相同的数字.谢谢你的帮助.

php md5

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

Cython可以加速对象迭代的数组吗?

我想使用cython加速以下代码:

class A(object):
    cdef fun(self):
        return 3


class B(object):
    cdef fun(self):
        return 2

def test():
    cdef int x, y, i, s = 0
    a = [ [A(), B()], [B(), A()]]
    for i in xrange(1000):
        for x in xrange(2):
            for y in xrange(2):
                s += a[x][y].fun()
    return s
Run Code Online (Sandbox Code Playgroud)

想到的唯一事情是这样的:

def test():
    cdef int x, y, i, s = 0
    types = [ [0, 1], [1, 0]]
    data = [[...], [...]]
    for i in xrange(1000):
        for x in xrange(2):
            for y in …
Run Code Online (Sandbox Code Playgroud)

python cython

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