问题列表 - 第16561页

确定当前的HINSTANCE?

win32应用程序的HINSTANCE传递给WinMain,但有没有其他方法可以确定当前的HINSTANCE(如果你不知道,我是win32编程的新手!)?我需要在库中创建一个窗口(因为库是跨平台的),id不想传递它.

winapi hinstance

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

基类如何引用超类型并仍然可以编译?

这个类怎么编译?

public class ReflectionHelper
{
    public static IReflectionHelper CreateHelper( object subject )
    {
        return ( IReflectionHelper )Activator.CreateInstance( typeof( ReflectionHelper<> ).MakeGenericType( GetFirstGenericArgument( subject ) ) );
    }
    public static Type GetFirstGenericArgument( object subject )
    {
        return subject.GetType().GetGenericArguments()[ 0 ];
    }
}

public class ReflectionHelper<T> : ReflectionHelper, IReflectionHelper where T : new()
    {}
Run Code Online (Sandbox Code Playgroud)

注意ReflectionHelper <T>继承自ReflectionHelper,它反映了ReflectionHelper的类型<>由于某种原因,我期待循环引用编译错误.

c#

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

SQL:内部连接两个大型表

我有两个大表,每个表有大约1亿条记录,我担心我需要在两者之间进行内部连接.现在,两张桌子都非常简单; 这是描述:

BioEntity表:

  • BioEntityId(int)
  • 名称(nvarchar 4000,虽然这是一个过度杀手)
  • TypeId(int)

EGM表(一个辅助表,实际上是批量导入操作的结果):

  • EMGId(int)
  • PId(int)
  • 名称(nvarchar 4000,虽然这是一个过度杀手)
  • TypeId(int)
  • LastModified(日期)

我需要获得匹配的名称,以便将BioEntityId与驻留在EGM表中的PId相关联.最初,我尝试使用单个内连接执行所有操作,但查询似乎占用时间太长,数据库的日志文件(在简单恢复模式下)设法咀嚼所有可用磁盘空间(刚刚超过200 GB,当数据库占用18GB)并且等待两天后查询将失败,如果我没有弄错的话.我设法保持日志不会增长(现在只有33 MB),但查询已经连续运行了6天,并且它看起来不会很快就会停止.

我在相当不错的计算机上运行它(4GB RAM,Core 2 Duo(E8400)3GHz,Windows Server 2008,SQL Server 2008)并且我注意到计算机偶尔会每30秒(给予或接受)一次几秒钟.这使得它很难用于其他任何事情,这真的让我感到紧张.

现在,这是查询:

 SELECT EGM.Name, BioEntity.BioEntityId INTO AUX
 FROM EGM INNER JOIN BioEntity 
 ON EGM.name LIKE BioEntity.Name AND EGM.TypeId = BioEntity.TypeId
Run Code Online (Sandbox Code Playgroud)

我手动设置了一些索引; EGM和BioEntity都有一个包含TypeId和Name的非聚集覆盖索引.但是,查询运行了五天,它也没有结束,所以我尝试运行Database Tuning Advisor来使事情发挥作用.它建议删除我的旧索引并创建统计信息和两个聚簇索引(每个表上一个,只包含我发现相当奇怪的TypeId - 或者只是简单的愚蠢 - 但我还是试了一下).

它现在已经运行了6天,我仍然不确定该怎么做......任何想法的人?我怎样才能更快(或者至少有限)?

更新: - 好的,我已取消查询并重新启动服务器以使操作系统重新启动并运行 - 我正在使用您提议的更改重新运行工作流程,特别是将nvarchar字段裁剪为更小的尺寸并交换"like"为"=".这将需要至少两个小时,所以我稍后会发布进一步的更新

更新2(格林尼治标准时间下午1点,2009年11月18日): - 估计的执行计划显示有关表扫描的成本为67%,然后是33%的哈希匹配.接下来是0%的并行性(这不是很奇怪吗?这是我第一次使用估计的执行计划,但这个特殊的事实只是抬起了我的眉毛),0%哈希匹配,0%并行度,0%顶部,0 %table insert和最后另一个0%select into.似乎索引是垃圾,正如预期的那样,所以我将制作手动索引并丢弃糟糕的建议.

sql sql-server inner-join query-optimization sql-server-2008

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

java.lang.NoSuchMethodError:方法java.util.TreeMap.firstEntry with signature()Ljava.util.Map $ Entry; 没找到

我正在尝试使用TreeMap类的ceilingKey(),ceilingEntry(),firstKey()和firstEntry()但收到错误:
java.lang.NoSuchMethodError: method java.util.TreeMap.firstEntry with signature ()Ljava.util.Map$Entry; was not found.

此错误是由以下代码引起的:
if (tmpmap.size() == 1 && tmpmap.firstKey() == req_sbyte && tmpmap.firstEntry().getValue() == req_size) {
send("F" + req_nr + "," + Integer.toString(req_filenr) + "," + Long.toString(req_sbyte) + "," + Integer.toString(req_size), "localhost", CLIENTPORT);
}

这是java -version的输出:
java version "1.5.0" gij (GNU libgcj) version 4.1.2 20070925 (Red Hat 4.1.2-33) Copyright (C) 2006 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for …

java nosuchmethoderror

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

MySql:为什么这个查询运行得如此之慢?

好的,我有这个购物车中的产品清单.我正在尝试将所有相关项目检索到购物车中的商品,而不会拉出购物车中的任何商品.

我编写了这个查询,它完全按照我想要的方式提取,但它的运行时间为8秒.

SELECT * FROM cart_product 
WHERE product_id 
IN(
    SELECT product_related_related_id FROM `cart_product_related` 
    WHERE product_related_product_id 
    IN (5401,5402,4983,5004)
) 
AND product_id 
NOT IN(5401,5402,4983,5004)
Run Code Online (Sandbox Code Playgroud)

显示行0 - 2(总共3行,查询占用7.9240秒)

有什么方法可以优化它以使其运行更快?

谢谢!

mysql sql performance

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

如何实现数据表"group by"?

我想为我的数据表实现一个"Group By".有什么建议吗?

更新:

c#,.net 2.0

c# datatable

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

使用php cURL从文件头获取文件名

我有这个php cURL函数:

function curl_login($url,$data,$proxy,$proxystatus){
$fp = fopen("cookietlt.txt", "w");
fclose($fp);
$login = curl_init();
curl_setopt($login, CURLOPT_COOKIEJAR, "cookie.txt");
curl_setopt($login, CURLOPT_COOKIEFILE, "cookie.txt");
curl_setopt($login, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($login, CURLOPT_TIMEOUT, 40);
curl_setopt($login, CURLOPT_RETURNTRANSFER, TRUE);
if ($proxystatus == 'on') {
    curl_setopt($login, CURLOPT_SSL_VERIFYHOST, FALSE);
    curl_setopt($login, CURLOPT_HTTPPROXYTUNNEL, TRUE);
    curl_setopt($login, CURLOPT_PROXY, $proxy);
}
curl_setopt($login, CURLOPT_URL, $url);
curl_setopt($login, CURLOPT_HEADER, TRUE);
curl_setopt($login, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
curl_setopt($login, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($login, CURLOPT_POST, TRUE);
curl_setopt($login, CURLOPT_POSTFIELDS, $data);
ob_start();      // prevent any output
return curl_exec ($login); // execute the curl command
ob_end_clean(); …
Run Code Online (Sandbox Code Playgroud)

php filenames curl file http-headers

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

DataGridView:通过值或参考传递?

我认为DataGridView是内存猪.是通过值传递datagridview还是通过引用更好?它甚至应该通过吗?

c# datagridview pass-by-reference pass-by-value

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

如何在Java中使用指针?

我知道Java没有指针,但我听说Java程序可以用指针创建,这可以由少数java专家完成.这是真的吗?

java pointers unsafe

102
推荐指数
7
解决办法
33万
查看次数

Java和SQL Server中的精确噩梦

我一直在努力解决Java和SQL Server中的精确噩梦,直到​​我不知道为止.就个人而言,我理解这个问题及其根本原因,但向全球客户解释这一点是不可行的(至少对我而言).

情况就是这样.我在SQL Server中有两列--Qty INT和Price FLOAT.这些值为 - 1250和10.8601 - 因此,为了获得总值,其数量*价格和结果为13575.124999999998(在Java和SQL Server中).那是对的.问题是这个 - 客户不想看到它,他们只看到这个数字为13575.125就是这样.在一个地方,他们可以用2位小数精度看到它,另外4位小数.当以4位小数显示时,数字是正确的 - 13575.125,但是当以2位小数显示时,他们认为它是错误的 - 13575.12 - 应该是13575.13!

救命.

java sql-server precision rounding

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