问题列表 - 第45758页

List包含()PLinq?

假设我有一个大清单

List<long> longList = new List<long>(10000000)
Run Code Online (Sandbox Code Playgroud)

我想做以下查询:

bool found = longList.Contains(4345235234524245124L);
Run Code Online (Sandbox Code Playgroud)

有没有办法使用PLinq让每个线程只搜索列表的一小部分?

我知道在这种情况下使用Dictionary或HashMap会更好.这只是我想知道的关于PLinq的东西,这个例子非常方便.

.net c# .net-4.0 plinq

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

Doctrine 2 Master/Slave连接

我正在寻找设置Doctrine 2的不同方式来使用MySQL的主/从连接.设置将使一个主数据库具有多个从属数据库.所有SELECT语句都应来自随机的实时从站,并且任何UPDATE,INSERT,DELETE语句都将始终委派给主连接.

有没有人以这种方式设置Doctine 2或者对如何处理它有任何想法?

doctrine-orm

7
推荐指数
2
解决办法
6738
查看次数

采访与Hashtable和词典有关的问题

我最近在几次关于Hashtables的访谈中进行了深入研究,并且何时需要覆盖GetHashCode().讨论一直在深入和深入,直到我全身心投入.

我现在正在做一些研究,以涵盖下一次准备好的一切.

我找到了这篇我想分享的优秀文章:http: //msdn.microsoft.com/en-us/library/ms379571(VS80).aspx #datastructures20_2_topic5

1)我感觉不太舒服的事实是字典是基于哈希的,但列表显然不是.这只是意味着在List <>和Array []中搜索是线性的,而在字典或散列表中搜索是不变的,因此更快?这都是它的全部吗?

2)如果我使用类作为字典中的键,我需要根据任何必需的标识字段覆盖该类的GetHashcode()以使实例唯一.但是,仍然可能发生两个ID字段相等并且将生成相同的哈希码?如果这是两个实例与相同哈希码冲突期间发生的情况?

3)如何解决碰撞?我在文章中读到了关于Hashtable和Chaining for the Dictionary的碰撞情况下的rehashing方法.但我仍然不确定它是如何工作的,因为我不是数学天才.: - \任何人都可以更好地解释它是如何工作的?

非常感谢,Kave

.net

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

用于加密和解密文件的Python脚本

我正在通过其中一个处于活动状态的python配方,并找到了以下代码.我想出了以下4个问题.非常感谢任何指导和解释.

Q ::我无法弄清楚为什么在"k = long(sys.argv [2])"行的第一个位置从用户那里获取"密钥随机种子"?特别是因为,这个值'k'似乎没有在代码的后半部分使用?

其次,在加密和解密代码的部分,什么是声明"字节组[I] -random.randint(0,255)256%"的确切含义?这是否意味着每个字符的unicode值在加密期间移位或移位,并在解密时重新移回其原始值?

第三,"bytearray = map(ord,f1.read())"是否计算文件中每个字符的unicode点值?

最后,由于在加密和解密中使用随机数,因此什么因素可以保证加密文件的解密是准确的?种子价值"k"与此有什么关系?

以下是我正在研究的代码.

非常感谢您的指导,提前致谢

# encdec.py

import sys
import random

if len(sys.argv) != 5:
    print "Usage: encdec.py e/d longintkey [path]filename1 [path]filename2"
    sys.exit()

k = long(sys.argv[2]) # key
random.seed(k)

f1 = open( sys.argv[3], "rb")
bytearr = map (ord, f1.read () )
f2 = open( sys.argv[4], "wb" )

if sys.argv[1] == "e": # encryption

    for i in range(len(bytearr)):
        byt = (bytearr[i] + random.randint(0, 255)) % 256
        f2.write(chr(byt))


if sys.argv[1] == "d": # …
Run Code Online (Sandbox Code Playgroud)

python encryption cryptography

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

将信号/槽(QObject)添加到QGraphicsItem:性能命中?

我想在QGraphicsItem中添加信号/槽,这样我就可以从另一个线程到达QGraphicsItemObjects.我知道有两个选项:使用QGraphicsObject或从QObject和QGraphicsItem继承.

使用QGraphicsObject

这被认为是缓慢的.根据stackoverflow 上的这个答案,QGraphicsObjects由于它们的实现而很慢.当我查看QGraphicsObjects的源代码时,我可以看到根据对象所做的更改发出了很多信号.对我来说,这似乎是QGraphicsObjects缓慢的原因,但我认为第二种解决方案可以避免这种性能上升(如果真的是一次).

继承自QObject和QGraphicsItem.

当构造一个继承自QObject和QGraphicsItem的类时,你似乎得到了QGraphicsObject最有趣的功能减去性能命中:你可以在你的类中定义槽和发出信号,但是你不能继承QGraphicsObject的默认实现.你会不断发出你可能不感兴趣的变化的信号.你现在能够发出信号,但不必担心你不关心的事情会发出信号(x值变化会在QGraphicsObject中发出信号但是不在这个解决方案中).

我的问题摘要

  • QGraphicsObjects真的比QGraphicsItems慢吗?
  • 如果它们是,是因为实现发出信号(并且发射信号是一个很大的性能损失)?
  • 如果是这样,第二个解决方案(多重继承)是否会避免这种惩罚?

c++ qt qt4

14
推荐指数
2
解决办法
7486
查看次数

MongoDB支持的最大数据库数

我想为每个客户创建一个数据库.但之前,我想知道在一个MongoDB实例中可以创建多少个数据库?

mongodb

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

有没有更好的方法来优化lennard jones潜在功能?

事实上,它是Lennard Jones潜力的衍生物.其原因是,我写一个分子动力学程序和时间至少80%是在下面的函数中度过,即使是最激进的编译器选项(GCC **-O3).

double ljd(double r) /* Derivative of Lennard Jones Potential for Argon with 
                        respect to distance (r) */ 
{  
    double temp;  
    temp = Si/r;  
    temp = temp*temp;
    temp = temp*temp*temp;  
    return ( (24*Ep/r)*(temp-(2 * pow(temp,2))) );  
}  

此代码来自文件"functs.h",我将其导入到我的主文件中.我认为以这种方式使用临时变量会使函数更快,但我担心创建它们太浪费了.我应该使用静电吗?此外,代码是使用openmp并行编写的,所以我不能真正将temp声明为全局变量?

定义变量Ep和Si(使用#define).我只使用C约1个月.我试着看一下gcc生成的汇编代码,但我完全迷失了.

c performance

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

来自Crontab的Rake Task?

堆:

的Apache2

Rails 2.3.8

RedHat Linux

Ruby Enterprise 1.8.7

在我的应用程序用户的crontab中获得了以下rake任务,这意味着每15分钟将记录拉入数据库表:

*/15 * * * * app_user cd /var/www/apps/my_app/current/ && rake thing:do_stuff RAILS_ENV=production
Run Code Online (Sandbox Code Playgroud)

我可以看到cron守护程序在cron日志中运行此任务,但它应该将记录拉入的数据库表不会更改.当我在/ var/www/apps/my_app/current目录中手动运行它时,此任务正常运行,并将记录拉入表中,如我所料.

我重置了crontab中的PATH变量以反映使用REE,认为可能默认路径不会与/ opt/ruby​​-enterprise一起生成...

如何让这个rake任务实际与cron一起运行?

ruby cron rake ruby-on-rails crontab

7
推荐指数
2
解决办法
5774
查看次数

这通常在PHP中意味着什么?

我是PHP的新手,所以我很困惑看到这些不同的运营商整天.这是我在观看视频tutorail时遇到的一些代码,如果有人可以解释一下,我会很感激:

class Email extends CI_Controller
{
 function __construct()
{
    parent::__construct();
}

   function index()
    {
    $config = Array(
        'protocol'    => 'smtp',
        'smtp_host' => 'ssl://smtp.googlemail.com',
        'smtp_port'  => 465,
        'smtp_user' => 'username@gmail.com',
        'smtp_pass' =>'password',
    );
        $this->load->library('email', $config);
        $this->email->set_newline("\r\n");

        $this->email->from('username@gmail.com', 'Jerry');
        $this->email->to('username@gmail.com');
        $this->email->subject('this is an email test');
        $this->email->message('this is test message!');

        if($this->email->send())
        {
            echo 'Your email was sent';
        }
        else 
        {
            show_error($this->email->print_debugger());
        }
    }

    ...
Run Code Online (Sandbox Code Playgroud)

php

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

VS2010:更改项目库的名称

如何以这样一种方式更改项目库的名称:

1)装配信息名称

2)物理文件夹名称

3)参考名称

我尝试了正常的重构,但它不会影响所有条目.即旧库名="实用程序",新库名="DataLayer"."Datalayer"应该在任何地方替换"Utilities".

visual-studio-2010 libraries

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