我有一个使用加速度计的应用程序.有时,应用程序将在没有加速计数据更新的情况下启动.重新启动应用程序,有时问题仍然存在,有时它不会.甚至更奇怪,有时我可以尝试10次,一切都按预期工作.这是一个错误,或者可能是我遗漏的东西.调试时,加速度计未更新时,永远不会调用此代码:
- (void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration;
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
我在这里找到了一个支持iPhone的字体列表
http://daringfireball.net/misc/2007/07/iphone-osx-fonts
但我只是想确认一下,我们可以在应用程序中使用所有这些字体,或者我们仅限于某些类型的字体.
我有一个脚本从更大的表中提取某些数据,其中一个字段特别是定期更改,例如
SELECT CASE @Flag WHEN 1 THEN t.field1 WHEN 2 THEN t.field2 WHEN 3
THEN t.field3 END as field,
...[A bunch of other fields]
FROM table t
Run Code Online (Sandbox Code Playgroud)
但是,现在问题是我想对数据进行其他处理.我想找出最有效的方法.我需要有一些方法来获取标志,所以我知道我正在谈论由正确的字段切片的数据.
我正在玩一个可能的解决方案(主要是看看会发生什么)是将脚本的内容转储到一个表函数中,该表函数已经传递给它,然后对函数的结果使用SELECT查询.我设法让它工作,但它明显慢于......
显而易见的解决方案,也许是处理器周期的最有效使用:创建一系列缓存表,一个用于三个标志值中的每一个.然而,问题是找到一些从正确的缓存表中提取数据以执行计算的方法.显而易见但不正确的反应就像是
SELECT CASE @Flag WHEN 1 THEN table1.field WHEN 2 THEN table2.field WHEN 3
THEN table3.field END as field,
...[The various calculated fields]
FROM table1, table2, table3
Run Code Online (Sandbox Code Playgroud)
不幸的是,很明显,这会产生一个巨大的交叉连接 - 这根本不是我想要的结果.
有谁知道如何将这个交叉连接变成"只看x桌"?(不使用动态SQL,这会让事情难以处理?)或者另一种解决方案,那仍然相当快速?
编辑:这是否是一个很好的理由,我试图实现的想法是没有三个基本相同的查询,只有表格不同 - 每当对逻辑进行更改时,必须进行相同的编辑.这就是为什么我到目前为止避免了"让国旗完全分开"的原因......
我有一个大型的xml文档,需要一次处理100条记录
它是在用c#编写的Windows服务中完成的.
结构如下:
<docket xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="docket.xsd">
<order>
<Date>2008-10-13</Date>
<orderNumber>050758023</orderNumber>
<ParcelID/>
<CustomerName>sddsf</CustomerName>
<DeliveryName>dsfd</DeliveryName>
<Address1>sdf</Address1>
<Address2>sdfsdd</Address2>
<Address3>sdfdsfdf</Address3>
<Address4>dffddf</Address4>
<PostCode/>
</order>
<order>
<Date>2008-10-13</Date>
<orderNumber>050758023</orderNumber>
<ParcelID/>
<CustomerName>sddsf</CustomerName>
<DeliveryName>dsfd</DeliveryName>
<Address1>sdf</Address1>
<Address2>sdfsdd</Address2>
<Address3>sdfdsfdf</Address3>
<Address4>dffddf</Address4>
<PostCode/>
</order>
.....
.....
</docket>
Run Code Online (Sandbox Code Playgroud)
在一个案卷中可能会有成千上万的订单.
我需要将其切成100个元素块
但是,100个订单中的每一个仍然需要用父"docket"节点包装并具有相同的命名空间等
这可能吗?
我最近在使用python进行开发时一直在使用virtualenv.我喜欢使用--no-site-packages选项的隔离开发环境的想法,但在开发PyGTK应用程序时这样做可能有点棘手.默认情况下,PyGTK模块安装在Ubuntu上,我想让virtualenv(使用--no-site-packages)知道位于系统其他位置的特定模块.
最好的方法是什么?或者我应该吮吸它并删除--no-site-packages选项?
为什么我们看不到允许返回类型中具有多态性的callables的类C语言?我可以看到附加类型推断是如何成为障碍的,但是我们有很多语言都有完整的类型推理系统(适用于不同级别的"工作").
编辑:返回类型多态性我的意思是仅在返回类型中重载函数签名.例如,C++和Java只允许在形式参数的类型中重载,而不是在返回类型中.
如何在SQL中使用高效的简单随机样本?有问题的数据库正在运行MySQL; 我的表至少有200,000行,我想要一个大约10,000的简单随机样本.
"明显"的答案是:
SELECT * FROM table ORDER BY RAND() LIMIT 10000
Run Code Online (Sandbox Code Playgroud)
对于大型表来说,这太慢了:它为每一行调用RAND()(已经将它放在O(n)处)并对它们进行排序,最多使它成为O(n lg n).有没有办法比O(n)更快地做到这一点?
注意:正如Andrew Mao在评论中指出的那样,如果您在SQL Server上使用此方法,则应使用T-SQL函数NEWID(),因为RAND()可能会为所有行返回相同的值.
编辑:5年后
我用更大的表再次遇到了这个问题,并最终使用了@ ignorant的解决方案,并进行了两次调整:
要获取表的1000项样本,我计算行并使用frozen_rand列将结果平均下降到10,000行:
SELECT COUNT(*) FROM table; -- Use this to determine rand_low and rand_high
SELECT *
FROM table
WHERE frozen_rand BETWEEN %(rand_low)s AND %(rand_high)s
ORDER BY RAND() LIMIT 1000
Run Code Online (Sandbox Code Playgroud)
(我的实际实现涉及更多的工作,以确保我没有欠采样,并手动包裹rand_high,但基本的想法是"随机削减你的N到几千.")
虽然这会做出一些牺牲,但它允许我使用索引扫描对数据库进行采样,直到它再次小到ORDER BY RAND()为止.
我想将ASP.NET AJAX页面方法功能与用户控件一起使用.有没有办法能够在UserControl的代码后面指定我的静态[WebMethod]而不是后面的Page代码?
以下代码有什么作用?PHP手册中某些内容的链接也很不错.
if ($_SERVER['SERVER_PORT'] <> 443) {
doSomething();
}
Run Code Online (Sandbox Code Playgroud) .net-2.0 ×2
c# ×2
iphone ×2
sql ×2
.net ×1
.net-3.0 ×1
asp.net ×1
cocoa-touch ×1
comparison ×1
fonts ×1
mysql ×1
operators ×1
php ×1
polymorphism ×1
postgresql ×1
pygtk ×1
python ×1
random ×1
return-type ×1
sql-server ×1
t-sql ×1
ubuntu ×1
virtualenv ×1
xml ×1