小编Chr*_*ris的帖子

是对ConcurrentDictionary值的线程安全的linq查询吗?

假设我有以下代码:

ConcurrentDictionary<long, long> myDict= new ConcurrentDictionary<long, long>();
Run Code Online (Sandbox Code Playgroud)

通常,每个按键访问都是线程安全的,但也是以下linq查询线程安全?我在文档中没有找到任何内容:http: //msdn.microsoft.com/en-us/library/dd287226.aspx

if myDict.Values.Any(x => !x.HasPaid))
{
  return false
}
Run Code Online (Sandbox Code Playgroud)

c# linq .net-4.0

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

使用postgresql DB存储NULL值需要多少磁盘空间?

假设我的表上有一列定义了以下内容:

"MyColumn" smallint NULL
Run Code Online (Sandbox Code Playgroud)

存储类似0,1或其他值的值应该需要2个字节(1).但是如果我将"MyColumn"设置为NULL,需要多少空间?它需要0个字节吗?

是否有一些额外需要的字节用于管理目的或每个列/行的此类事项?

(1)http://www.postgresql.org/docs/9.0/interactive/datatype-numeric.html

sql postgresql types nullable

40
推荐指数
2
解决办法
9860
查看次数

如何在C#中强制内联函数?

可能重复:
C#中的内联函数?

在c ++中我们可以强制函数内联.

在c#中这也是可能的吗?有时,当方法很小时,它会自动内联.但是有可能强制在c#/ .Net中内联函数吗?

.net c#

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

ASP.NET MVC:几分钟后首先访问缓慢,然后每个后续请求都很快

当我第一次访问我的ASP.NET MVC网站的任何页面时,第一个请求很慢.加载需要大约4-5秒.但是,对任何页面的每个后续请求都很快.

当我等待几分钟或一小时后,每次第一次请求再次变慢.以下每个请求都很快.

我认为IIS 7正在编译代码并将其保存在内存中.一段时间后,它会将其从内存中删除,因此需要再次编译.

每次第一次请求时,我能做的是和以下每个请求一样快吗?(如果可能的话,不预编译我的源代码)

非常感谢你提前!

asp.net iis asp.net-mvc iis-7

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

将泛型方法中的T参数转换为DateTime

我有以下(简化)方法:

private static string GetStringFromValue<T>(T val)
{
    if (typeof(T) == typeof(DateTime))
    {
        return string.Format("{0}", ((DateTime)val).Year.ToString("0000"));
    }
    return string.Empty;
}
Run Code Online (Sandbox Code Playgroud)

在演员"(DateTime)val"我得到以下错误:

无法将类型'T'的表达式转换为'DateTime'类型

如何访问DateTime参数的Year属性?

更新:谢谢你所有非常快速的答案.这个方法(和方法名称)实际上是(!)简化,以准确显示我的问题,并让每个人只需将其复制并粘贴到他自己的视觉工作室.如果类型是DateTime,我只想添加一些Type特定值.除此之外,99%的方法是相同的.

.net c# generics casting

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

通过文件偏移从2TB文件中随机读取多个300字节块的最快方法?

我在RAID 5(4 x 7.2k @ 3TB)系统上有一些2TB只读(没有写入一次)文件.

现在我有一些想要读取该文件部分的线程.每个线程都有一个所需的块数组.每个块都通过文件偏移(位置)和大小(大多数约300个字节)来寻址.

读取此数据的最快方法是什么.我不关心CPU周期,(磁盘)延迟是重要的.所以,如果可能的话,我想利用硬盘的NCQ.

由于文件是高度压缩的,将随机访问,我确切地知道位置,我没有其他方法来优化它.

  • 我应该将文件读取汇集到一个线程吗?
  • 我应该保持文件打开吗?
  • 如果每个线程(可能大约30个)同时打开每个文件,那么新的线程是什么(来自Web服务器)?
  • 如果我等待100毫秒并按文件偏移量排序我的读数(最低的第一个)会有帮助吗?

读取数据的最佳方法是什么?你有经验,技巧和提示吗?

.net c# file-io binary-data

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

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
查看次数

Postgresql:如果列以减号结尾,则删除文本字段中的最后一个字符

我想删除列中的最后一个字符,如果它以减号结束.我怎么能在postgresql中这样做?

例如:

sdfs-dfg4t-etze45z5z- => sdfs-dfg4t-etze45z5z
gsdhfhsfh-rgertggh => stay untouched
Run Code Online (Sandbox Code Playgroud)

我可以使用简单的语法吗?

sql postgresql

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

解决方案范围广app.config/web.config?

我有一个asp.net-mvc-2项目,一个Web服务,一个类库和三个普通桌面应用程序的解决方案.目前,我需要将所有app.config设置从一个项目复制到另一个项目.如果我想改变一些东西,这是一场噩梦.

我知道有一个解决方案可以将所有这些信息存储在全局.config文件中,但我正在寻找一种解决方案,将专用于我的解决方案的值存储到我的机器中.那可能吗?

.net c# visual-studio-2010 visual-studio

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

在global.asax中使用PreSendRequestHeaders事件

我尝试在"Application_Start"方法中的global.asax文件中分配PreSendRequestHeaders事件.但这不起作用.

private void Application_Start()
{
    PreSendRequestHeaders += OnPreSendRequestHeaders;           
}

private void OnPreSendRequestHeaders(object sender, EventArgs e)
{
   // this is not called
}
Run Code Online (Sandbox Code Playgroud)

没有调用OnPreSendRequestHeaders,为什么?是否可以在global.asax中分配PreSendRequestHeaders方法?

c# asp.net iis global-asax

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