问题列表 - 第37361页

在C#中使用Directory.GetFiles(),有没有办法在找到文件时启动线程而不必等待?

在C#中使用Directory.GetFiles(),有没有办法在找到文件时启动线程?

行为似乎是"找到所有文件"然后在每个文件上执行您需要的操作.是否有另一个类允许一个人在找到文件时启动线程(达到一定数量)?

.net c# filesystems

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

从单个工作线程更新全局变量:我需要互斥锁吗?

看来,这个问题 频繁,但我不来任何明确的结论.当我有以下情况时,我需要一些帮助来确定我是否应该(或必须!)在访问/修改全局变量时实现锁定代码:

  • 在文件范围定义的全局变量
  • 一个"工人"线程读/写全局变量
  • 从主进程线程调用调用访问器函数返回这些全局变量

所以问题是,我应该使用互斥锁来锁定对全局变量的访问吗?

更具体地说,我正在编写一个C++库,它使用网络摄像头来跟踪纸张上的对象 - 计算机视觉是CPU密集型的,因此性能至关重要.我有一个单一的,其是在剥离工作线程Open()功能.该线程处理所有对象跟踪.Close()调用函数时,它会终止(间接w /全局标志).

感觉就像我只是要求内存损坏,但我没有观察到死锁问题,也没有遇到从这些访问器函数返回的任何错误值.而几个小时的研究后,一般人印象中我得到的是,"咩,可能随便啦.有乐趣的是." 如果我确实应该使用互斥锁,为什么我没有遇到任何问题呢?

这是对我当前程序的过度简化:

// *********** lib.h ***********
// Structure definitions
struct Pointer
{
  int x, y;
};
// more...

// API functions
Pointer GetPointer();
void Start();
void Stop();
// more...
Run Code Online (Sandbox Code Playgroud)

实现看起来像这样......

// *********** lib.cpp ***********
// Globals
Pointer p1;
bool isRunning = false;
HANDLE hWorkerThread;
// more...

// API functions
Pointer GetPointer()
{
  // NOTE: my current implementation is …
Run Code Online (Sandbox Code Playgroud)

c++ multithreading opencv mutex

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

Crystal Report显示HTML文本,但子弹不显示.为什么?

我从SQL-Server nvarchar(3000)字段中获取数据,该字段格式为html,在Crystal Reports 11中显示它.数据被保存为项目符号,如果我将数据拉出并放入带有html扩展名的文本文件,它显示了项目符号.但是从Crystal,它没有.我得到新线,但没有子弹.

保存的字段如下所示:

<HTML><BODY><DIV STYLE="text-align:Left;font-family:Tahoma;font-style:normal;font-weight:normal;font-size:11;color:#000000;"><DIV><DIV><P><SPAN>This is a bulleted list</SPAN></P><UL><LI><P><SPAN>One</SPAN></P></LI><LI><P><SPAN>Two</SPAN></P></LI><LI><P><SPAN>Three</SPAN></P></LI></UL><P><SPAN /></P></DIV></DIV></DIV></BODY></HTML>
Run Code Online (Sandbox Code Playgroud)

在Crystal中,它看起来像这样:

This is a bulleted list 
One 
Two 
Three
Run Code Online (Sandbox Code Playgroud)

换句话说,没有子弹.为什么不?

html formatting sql-server-2008 crystal-reports

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

在Perl中访问字符串中的单个字符时,是否更快地子行或拆分为数组?

我正在编写一个Perl脚本,我需要在其中循环遍历字符串的每个字符.有很多字符串,每个字符串长100个字符(它们是短的DNA序列,以防你想知道).

那么,使用一次substr提取每个字符是否更快,或者split将字符串更快地转换为数组然后遍历数组?

在我等待答案时,我想我会读到如何在Perl中对事物进行基准测试.

string perl performance character

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

是否有一种"正确"的方式来使用PHP?

我一直在学习php,只需插上它即可.

我希望有人能指出我在安全,流程和一般最佳实践方面的正确方向?

谢谢.

编辑 -

我想用一种更好的方式来表达我想要问的是什么.最佳实践是什么:
1.)在处理表单时使用php,get vs post,$ _REQUEST vs $ _GET&$ _POST
2.)动态创建HTML时文件(如下所示)
3.)在与表单创建者相同的文件中登录和身份验证
4.)使用php发送电子邮件

来自#2以上

<?php
echo "<h1> Welcome </h1>";

if ($_SESSION['type'] == "admin")
{
//lots of html in the echo statment
echo "tables and admin interface here";
} else
{
//lots of html in the echo statment
echo "tables and user dashboard here";
}
?>

--VS--


<h1> Welcome </h1>

<?php
if ($_SESSION['type'] == "admin")
{
 ?>
lots of html in the echo statment    
tables and admin …
Run Code Online (Sandbox Code Playgroud)

html php symfony1 zend-framework

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

如何使用scala组合解析器抛出有意义消息的异常?

当语言不符合scala组合解析器的语法时,我想抛出一个异常.这是一个规则的例子:

def record: Parser[Record] = "-" ~ opt(recordLabel) ~ repsep(column, ",") ^^ {
    case "-" ~ label ~ columns => new Record(label, columns)
}
Run Code Online (Sandbox Code Playgroud)

让我们说在repsep(列,",")部分,他们意外地创建一个像这样的字符串

a, b, c, d,
Run Code Online (Sandbox Code Playgroud)

这是无效的,因为它以","结束,而不是假设存在.当你调用parseAll()时,而不是解析器只是停止,你如何使这个抛出一个人类可读的有意义的异常?(自定义文本,行号等)

编辑:好的,我发现了一些有用的东西,但我对它的可定制性不满意:

def loadFrom(filename: String) {
    val source = 
        Source.fromFile(filename).getLines.mkString("\n")
    val parseResult = parseAll(tables, source)
    if(!parseResult.successful) {
        throw new TestDataParseException(parseResult.toString)
    }
}
Run Code Online (Sandbox Code Playgroud)

toString打印一个好的消息,但是当它找到一个空格时(它有时看起来像我的IDE中的块/方块)它打印出奇怪的东西,比如想要"\ z".我宁愿说,"嘿,你忘了逗号!"

行号/列以[xy]的形式打印出来.我实际上想要显示[Line:x,Column:y],因为人们会更直观地知道这是什么.

谢谢

grammar parsing scala

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

带模板化构造函数的模板化类(其他类型)

是否有可能有一个模板化的类,并使用其他类型模板构造函数?

这样的事情:

template<typename T1>
class Foo{
    template<typename T2>
    Foo(T1 aBar, T2 dummyArgument){
        bar = aBar;
        bytesOfT2 = sizeof(T2);
    };

    int bytesOfT2;
    T1 bar;
};
Run Code Online (Sandbox Code Playgroud)

这可能吗?如果是这样,我怎么称呼这样的构造函数?我是否需要考虑标题和cpp文件?

谢谢!

//编辑:我的特定例子实际上甚至有点复杂.我有

template <typename U1, U2>
class Foo{
    U1 var1;
    U2 var2;
};

template <typename T1>
class Bar{
    template<typename T2, typename T3>
    Bar(Foo<T2,T3> aFoo, T1 aVal){
        val=aVal;
        bytesOfT2=sizeof(T2);
        bytesOfT3=sizeOf(T3);
    };

int bytesOfT2;
int bytesOfT3;
T1 val;
};
Run Code Online (Sandbox Code Playgroud)

这是否意味着我可以在这里使用任何类型的Foo变量调用构造函数,它应该根据特定版本的Foo自动选择正确的构造函数(例如,如果我传递的变量是Foo类型,它应该自动将T2设置为bool和T3浮动)?

c++ templates constructor

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

如何使用数据在表上创建序列号列索引

我有下表有10个唯一行,BookingID是一个包含随机数的FK.该数字不需要按顺序排列.

BookingID, Description
1000       Foo
3000       Bar
1500       Zoo
Run Code Online (Sandbox Code Playgroud)

我需要插入一个名为ID的顺序索引,该索引来自1..x

我如何在SQL Server 2005中这样做?我想写一个光标和x = x + 1,但也许有更好的方法?

这是我想要的结果

Id, BookingID, Description
1   1000       Foo
2   3000       Bar
3   1500       Zoo
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server migration sql-server-2005

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

用python重命名文件 - 正则表达式

我想用python重命名1k文件.它们都是somejunkDATE.doc格式

基本上,我想删除所有的垃圾,只留下日期.我不确定如何匹配目录中的所有文件.

谢谢

python regex rename file

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

计算邮政编码...和用户之间的距离.

这是一个挑战问题,而不是我迫切需要的东西,所以不要整天花在它们身上.

我在2000年左右建立了一个约会网站(早已不复存在),其中一个挑战是计算用户之间的距离,以便我们可以在半径X英里内展示您的"匹配".为了说明问题,给定以下数据库模式(粗略地):

USER TABLE UserId UserName ZipCode

ZIPCODE表ZipCode纬度经度

USER和ZIPCODE加入USER.ZipCode = ZIPCODE.ZipCode.

您将采取什么方法来回答以下问题:在给定用户的邮政编码的X英里范围内的其他用户使用的邮政编码.

我们使用了2000年人口普查数据,其中包含邮政编码表及其近似的经纬度.

我们还使用Haversine公式来计算球体上任意两点之间的距离......非常简单的数学.

至少对我们来说,这个问题是我们19岁的大学生,真正成为了如何有效地计算和/存储从所有成员到所有其他成员的距离.一种方法(我们使用的方法)是导入所有数据并计算从每个邮政编码到每个其他邮政编码的距离.然后,您将存储并索引结果.就像是:

SELECT  User.UserId
FROM    ZipCode AS MyZipCode
        INNER JOIN ZipDistance ON MyZipCode.ZipCode = ZipDistance.MyZipCode
        INNER JOIN ZipCode AS TheirZipCode ON ZipDistance.OtherZipCode = TheirZipCode.ZipCode
        INNER JOIN User AS User ON TheirZipCode.ZipCode = User.ZipCode
WHERE   ( MyZipCode.ZipCode = 75044 )
        AND ( ZipDistance.Distance < 50 )
Run Code Online (Sandbox Code Playgroud)

当然,问题是ZipDistance表中会有很多行.它并非完全不可行,但它确实很大.此外,它需要对整个数据集进行完整的预处理,这也不是无法管理的,但不一定是可取的.

无论如何,我想知道你们中的一些大师会对这样的事情采取什么方法.此外,我认为这是程序员不时要解决的常见问题,特别是如果您考虑的算法类似的问题.我对一个彻底的解决方案很感兴趣,其中至少包括所有部分的HINTS,以便快速有效地完成这项工作.谢谢!

database gis zipcode geocoding distance

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