小编Sni*_*ave的帖子

Parallel.ForEach()与foreach(IEnumerable <T> .AsParallel())

Erg,我正在尝试使用Reflector在BCL中找到这两个方法,但找不到它们.这两个片段之间的区别是什么?

A:

IEnumerable<string> items = ...

Parallel.ForEach(items, item => {
   ...
});
Run Code Online (Sandbox Code Playgroud)

B:

IEnumerable<string> items = ...

foreach (var item in items.AsParallel())
{
   ...
}
Run Code Online (Sandbox Code Playgroud)

使用一个比另一个有不同的后果吗?(假设我在两个示例的括号内部所做的事情都是线程安全的.)

.net c# parallel-processing multithreading parallel.foreach

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

我如何在jQuery中监听点击并保持?

我希望能够在用户点击按钮时触发事件,然后将该点击保持1000到1500毫秒.

是否有jQuery核心功能或已启用此功能的插件?

我应该自己动手吗?我应该从哪里开始?

javascript jquery events

114
推荐指数
4
解决办法
10万
查看次数

Node.js:Gzip压缩?

我错误地发现Node.js没有gzip压缩,并且没有模块可以执行gzip压缩吗?如何使用没有压缩的Web服务器?我在这里错过了什么?我是否应该尝试将算法加载到JavaScript以供服务器端使用?

compression gzip node.js

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

使用AsParallel()/ Parellel.ForEach()指南?

寻找有关利用AsParallel()Parallel.ForEach()加快这一点的一些建议.

请参阅下面的方法(本例中简化/标准化).

它需要一个像"US,FR,APAC"这样的列表,其中"APAC"是50个其他"US,FR,JP,IT,GB"等的别名.该方法应采用"US,FR,APAC",并将其转换为"US","FR"列表以及"APAC"中的所有国家/地区.

private IEnumerable<string> Countries (string[] countriesAndAliases)
{
    var countries = new List<string>();

    foreach (var countryOrAlias in countriesAndAliases)
    {
        if (IsCountryNotAlias(countryOrAlias))
        {
            countries.Add(countryOrAlias);
        }
        else 
        {
            foreach (var aliasCountry in AliasCountryLists[countryOrAlias]) 
            {
                countries.Add(aliasCountry);
            }
        }
    }

    return countries.Distinct();
}
Run Code Online (Sandbox Code Playgroud)

是否将其并行化为将其更改为以下内容?使用AsParallel()比这更细微吗?我应该使用Parallel.ForEach()而不是foreach?并行化foreach循环时我应该使用哪些经验法则?

private IEnumerable<string> Countries (string[] countriesAndAliases)
{
    var countries = new List<string>();

    foreach (var countryOrAlias in countriesAndAliases.AsParallel())
    {
        if (IsCountryNotAlias(countryOrAlias))
        {
            countries.Add(countryOrAlias);
        }
        else 
        {
            foreach (var aliasCountry …
Run Code Online (Sandbox Code Playgroud)

.net c# parallel-processing multithreading

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

HTML:IE:在输入文本框中右填充

转到http://jsfiddle.net/srLQH/并在"结果"视图中填写输入文本框.

如果您在FF,Chrome和Safari中执行此操作,您的文本将停止在右侧20px之外.

在IE 7/8中,文本不会停止20px短 - 它一直到输入框的边缘.

与IE有什么关系?如何在IE中获得与其他所有浏览器相同的填充效果?

html css internet-explorer padding

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

C#:向ASP.NET中的Parallel.ForEach()添加上下文

我有一个带静态get属性的静态类,在这个属性中,我这样做:

// property body
{
    // HttpContext.Current is NOT null
    ...

    Parallel.ForEach(files, file =>
    {
        // HttpContext.Current is null
        var promo = new Promotion();
        ...
    });
    ...

    // HttpContext.Current is NOT null
}
Run Code Online (Sandbox Code Playgroud)

在视图使用此属性之前,此静态类不会进行类型初始化.

问题是,Promotion的静态构造函数,初始化第一次new Promotion()被内创建Parallel.ForEach(),使用HttpContext.Current.何时promo在此范围内实例化Parallel.ForEach(),HttpContext.Currentnull,new Promotion()因此导致异常.

HttpContext.Current静态get属性中不为null,因为在视图使用它之前不会调用它(因此有一个HttpContext.Current).

如果Promotion使用HttpContext.Current在它的实例,而不是它的静态成员,我很可能只是传递HttpContext.Currentnew Promotion()构造函数:

 var context = HttpContext.Current;
 Parallel.ForEach(files, file =>
 {
     var promo = …
Run Code Online (Sandbox Code Playgroud)

c# asp.net parallel-processing multithreading

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

"如果object为null,则为null;如果object为null,则为object.member"的快捷方式

我正在尝试编写一个通用扩展方法,让我这样做:

this.startDate = startDateXAttribute.NullOrPropertyOf<DateTime>(() =>
{
    return DateTime.Parse(startDateXAttribute.Value);
});
Run Code Online (Sandbox Code Playgroud)

NullOrPropertyOf()将返回null如果它是一个上使用的null对象(例如,如果startDateXAttributenull),或返回的结果Func,如果它不为空.

这种扩展方法会是什么样的?

c# generics

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

IPv6查找数据结构

patricia trie是众所周知的推荐数据结构,用于存储IPv4分配/分配和执行查找.

这对IPv6地址也是如此吗?只是更深/更高的trie来容纳额外的96位?特里仍然是帕特里夏,还是一个不同的基数特里?

ipv4 ipv6 trie data-structures

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

C#4.0:动态,继承自DynamicObject

假设我有这个:

dynamic foo = new Foobar();
Run Code Online (Sandbox Code Playgroud)

我有这个:

public class Foobar : DynamicObject
{

}
Run Code Online (Sandbox Code Playgroud)

问题是,是否有可能覆盖成员以DynamicObject使此代码:

string name = new Foobar().Name
Run Code Online (Sandbox Code Playgroud)

不是Exception在运行时抛出?我要回defaultname的,如果Name不是成员.

可能?我需要覆盖什么?

.net c# dynamic

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

JavaScript:循环遍历数组

如果认为循环JavaScript数组的最快方法是使用for-in循环,那会不会错?例如:

for (var index in items) {
    ...
}
Run Code Online (Sandbox Code Playgroud)

http://jsperf.com/loop-test2/2

javascript loops for-loop

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