小编Ven*_*kat的帖子

is和as之间的区别

请告诉C#中的isas关键字有什么区别?

c# casting

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

列表:计数与计数()

给定一个列表,首选哪个方法来确定里面的元素数量?

var myList = new List<string>();

myList.Count
myList.Count()
Run Code Online (Sandbox Code Playgroud)

.net c# linq list count

97
推荐指数
4
解决办法
13万
查看次数

如何选择最底行?

我可以做SELECT TOP(200)......但为什么BOTTOM(200)呢?

好吧,不要进入哲学我的意思是,我怎么能做相当于TOP(200)但相反(从底部开始,就像你期望BOTTOM做的那样......)?

sql database sql-server select keyword

92
推荐指数
5
解决办法
22万
查看次数

从具有相同方法名称的多个接口继承

如果我们有一个继承自多个接口的类,并且接口具有相同名称的方法,那么我们如何在我的类中实现这些方法?我们如何指定实现哪个接口的方法?

c# methods inheritance interface multiple-inheritance

66
推荐指数
4
解决办法
7万
查看次数

Microsoft Visual Studio更改默认主题

我发现使用IDE中给出的黑色主题进行编码真的很难visual studio 2012.无论如何我有可能回到旧的灰色主题或者无论如何我可以让它看起来更白一点?

ide themes microsoft-metro visual-studio-2012

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

TortoiseSVN - "从此版本恢复更改"vs"恢复到此修订"

链接:

http://tortoisesvn.net/docs/nightly/TortoiseSVN_en/tsvn-howto-rollback.html

描述了在错误提交后回滚SVN目录的两种方法.这两个选项有什么区别

Revert changes from this revision
Revert to this revision
Run Code Online (Sandbox Code Playgroud)

作为测试,我添加了一个文件,使用"从此版本中恢复更改"回滚,并为"恢复到此版本"执行相同的过程,并且SVN日志的状态没有区别.

我错过了什么吗?

svn version-control tortoisesvn revert

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

如何测量函数运行的时间?

我想看一个函数运行多长时间.所以我在表单上添加了一个计时器对象,我出来了这段代码:

private int counter = 0;

// Inside button click I have:
timer = new Timer();
timer.Tick += new EventHandler(timer_Tick);
timer.Start();
Result result = new Result();
result = new GeneticAlgorithms().TabuSearch(parametersTabu, functia);
timer.Stop();
Run Code Online (Sandbox Code Playgroud)

和:

private void timer_Tick(object sender, EventArgs e)
{
    counter++;
    btnTabuSearch.Text = counter.ToString();
}
Run Code Online (Sandbox Code Playgroud)

但这并不算什么.为什么?

.net c# performance timer stopwatch

39
推荐指数
8
解决办法
4万
查看次数

声明JavaScript数组时"{}"和"[]"之间有什么区别?

声明JavaScript数组时"{}"和"[]"之间有什么区别?通常我会声明

var a=[];
Run Code Online (Sandbox Code Playgroud)

声明数组的含义是什么? var a={}

javascript arrays declaration object javascript-objects

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

Parallel.ForEach比ForEach慢

这是代码:

using (var context = new AventureWorksDataContext())
{
    IEnumerable<Customer> _customerQuery = from c in context.Customers
                                           where c.FirstName.StartsWith("A")
                                           select c;

    var watch = new Stopwatch();
    watch.Start();

    var result = Parallel.ForEach(_customerQuery, c => Console.WriteLine(c.FirstName));

    watch.Stop();
    Debug.WriteLine(watch.ElapsedMilliseconds);

    watch = new Stopwatch();
    watch.Start();

    foreach (var customer in _customerQuery)
    {
        Console.WriteLine(customer.FirstName);
    }

    watch.Stop();
    Debug.WriteLine(watch.ElapsedMilliseconds);
}
Run Code Online (Sandbox Code Playgroud)

问题是,Parallel.ForEach与常规相比需要大约400ms ,大约foreach需要40ms.我究竟做错了什么,为什么这不能像我期望的那样工作?

.net c# parallel.foreach

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

处理,何时被称为?

请考虑以下代码:

namespace DisposeTest
{
    using System;

    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Calling Test");

            Test();

            Console.WriteLine("Call to Test done");
        }

        static void Test()
        {
            DisposeImplementation di = new DisposeImplementation();
        }
    }

    internal class DisposeImplementation : IDisposable
    {
        ~DisposeImplementation()
        {
            Console.WriteLine("~ in DisposeImplementation instance called");
        }
        public void Dispose()
        {
            Console.WriteLine("Dispose in DisposeImplementation instance called");
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

即使我在Test();调用之后放置了一个等待循环,Dispose也永远不会被调用.所以这很糟糕.我想编写一个简单易用的类,以确保清理所有可能的资源.我不想把这个责任交给我班级的用户.

可能的解决方案:使用using或调用自己处理(基本相同).我可以强制用户使用吗?或者我可以强制调用处理吗?

呼叫GC.Collect();Test();也不起作用.

dinull不调用任何处置.解构器可以工作,因此对象在退出时会被解构Test()

好的,现在很清楚!

谢谢大家的答案!我会在评论中添加警告!

.net c# garbage-collection dispose idisposable

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