上周,用户Masse问了一个关于递归列出 Haskell目录中文件的问题.我的第一个想法是尝试使用List包中的 monadic列表,以避免在打印开始之前在内存中构建整个列表.我实现如下:
module Main where
import Prelude hiding (filter)
import Control.Applicative ((<$>))
import Control.Monad (join)
import Control.Monad.IO.Class (liftIO)
import Control.Monad.ListT (ListT)
import Data.List.Class (cons, execute, filter, fromList, mapL)
import System (getArgs)
import System.Directory (getDirectoryContents, doesDirectoryExist)
import System.FilePath ((</>))
main = execute . mapL putStrLn . listFiles =<< head <$> getArgs
listFiles :: FilePath -> ListT IO FilePath
listFiles path = liftIO (doesDirectoryExist path) >>= listIfDir
where
valid "." = False
valid ".." …Run Code Online (Sandbox Code Playgroud) 我有一些由IIS托管的WCF服务,并且打开了ASP.Net兼容性.
我在web.config中有以下内容:
<serviceHostingEnvironment aspNetCompatibilityEnabled ="true"/>
我的服务类装饰如下:
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Required)]
出于某种奇怪的原因,在Web应用程序启动后,第一个请求的HttpContext.Current为null.对于后续请求,HttpContext.Current不为null.
有没有人知道为什么它不适用于第一个请求?
对HttpContext.Current的调用来自我编写的自定义UserNamePasswordValidator类,用于检查存储在数据库中的信用.
我正在调用一个java webservice,它返回一个包含错误列表的FaultException类型.因此响应消息大小总是很大.
在我的c#(clr3.5)客户端中,我收到以下错误
"已超出传入邮件的最大邮件大小限额(65536).要增加配额,请在相应的绑定元素上使用MaxReceivedMessageSize属性."
我相信解决这个问题的方法是设置ClientRuntime.MaxFaultSize msdn-doc
有没有办法在app.config中执行此操作?
我有一个简单的WPF Forms应用程序.我有一个DockPanel作为我的根面板.第一个子节点是StackPanel,其中包含一些控件,然后第二个控件是TabControl.我想要的,面板类型可以改变他们想要的只是TabControl保持窗口的填充大小,除了第一个StackPanel消耗的内容.然而无论我尝试什么,TabControl似乎都会改变它的大小,这取决于它里面的内容,而不是内部的内容.
<Window>
<DockPanel>
<StackPanel> </StackPanel>
<TabControl> </TabControl>
</DockPanel>
</Window>
Run Code Online (Sandbox Code Playgroud) 在使用Safari的iPad上,请访问此页面:http: //ifelse.org/projects/errors/viewport/test.html
这是来源:
<html>
<head>
<title>Viewport Test</title>
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black" />
<meta name="viewport" content="width=1030" />
<style>
body {
padding: 0;
margin: 0;
}
#test {
width: 1024px;
height: 500px;
border: 3px solid #ccc;
}
</style>
</head>
<body>
<div id="test">
<p>This is 1024 with a 3px border, so device width is 1030.</p>
<p>Works when viewing in Mobile Safari.</p>
<p>Does not work if you Bookmark it to the Home Screen and open from there.</p>
<p>Compare <a …Run Code Online (Sandbox Code Playgroud) 我已经开始学习WCF了。我编写了一个简单的服务来通过 LINQ 查询 SQL 关系。
[ServiceContract]
[AspNetCompatibilityRequirements(RequirementsMode = aspNetCompatibilityRequirementsMode.Allowed)]
public class Order_WCFService
{
[OperationContract]
public List<Order> getOrders()
{
List<Order> orderList= null;
try
{
orderList= DAL.GetList<Order>();
return orderList;
}
catch (Exception)
{
throw;
}
}
}
Run Code Online (Sandbox Code Playgroud)
它位于 ASP.NET-MVC 项目中。
我有一个简单的 silverlight 应用程序。它位于同一解决方案中,但位于不同的项目中。
我想通过 silverlight 应用程序使用我的服务。
我尝试“添加服务引用...”,在左侧栏中,我列出了所有可用的 ASMX 和 WCF 服务。当我单击任何服务时,它会尝试下载服务信息,但在 10-20 秒后失败:“尝试在...查找服务时发生错误(详细信息)”
我在这里做错了什么?
谢谢
我 100% 确定服务正常运行,因为我可以通过 AJAX 调用它们。
我需要检查服务器是否启动?如果失败然后我需要发送电子邮件这个任务应该每隔30分钟重复一次.
我必须使用批处理文件.
我读过关于允许使用PHP的预处理器的动态HTML样式表的技术,但是我想知道这个tecnique是多么安全,如果出于任何原因它不鼓励.
例如,而不是使用典型的:
<link rel="stylesheet" type="text/css" href="http:mysite.com/style.css/>
Run Code Online (Sandbox Code Playgroud)
我可以用:
<link rel="stylesheet" type="text/css" href="http:mysite.com/style.php/>
Run Code Online (Sandbox Code Playgroud)
你怎么看?
我的python应用程序有问题,我认为它与python垃圾收集有关,即使我不确定...
问题是我的应用程序需要花费大量时间退出并切换到下一个功能.
在我的应用程序中,我处理非常大的字典,包含数千个大型对象,这些对象是从包装的C++类中实例化的.
我在程序中放了一些时间戳输出,我看到在每个函数结束时,当函数内部创建的对象超出范围时,解释器在调用下一个函数之前花费了大量时间.并且我在应用程序结束时观察到同样的问题,程序应该退出:在屏幕上的最后一个时间戳和新提示的外观之间花费了很多时间(〜小时!).
内存使用情况稳定,所以我真的没有内存泄漏.
有什么建议?
可以成千上万的大型C++对象的垃圾收集速度慢吗?
有没有办法加快这个?
更新:
非常感谢您的所有答案,您给了我很多调试我的代码的提示:-)
我在Scientific Linux 5上使用Python 2.6.5,这是一个基于Red Hat Enterprise 5的自定义发行版.实际上,我并没有使用SWIG为我们的C++代码获取Python绑定,而是使用Reflex/PyROOT框架.我知道,它在粒子物理学之外并不是很有名(但仍然是开源的,可以免费获得),我必须使用它,因为它是我们主要框架的默认值.
在这种情况下,来自Python端的DEL命令不起作用,我已经尝试过了.DEL只删除链接到C++对象的python变量,而不是内存中的对象本身,它仍然由C++端拥有...
......我知道,这不是标准我猜,有点复杂,对不起:-P
但是按照你的提示,我会描述我的代码,我会按照你的建议给你回复更多细节.
额外更新:
好的,按照你的建议,我用我的代码检测cProfile,我发现实际上gc.collect()功能是占用大部分运行时间的功能!
这里是cProfile+ pstats print_stats()的输出:
>>> p.sort_stats("time").print_stats(20)
Wed Oct 20 17:46:02 2010 mainProgram.profile
547303 function calls (542629 primitive calls) in 548.060 CPU seconds
Ordered by: internal time
List reduced from 727 to 20 due to restriction
ncalls tottime percall cumtime percall filename:lineno(function)
4 345.701 86.425 345.704 86.426 {gc.collect}
1 167.115 167.115 200.946 200.946 PlotD3PD_v3.2.py:2041(PlotSamplesBranches)
28 … 我在编程中经常使用向量,并且通常遍历一个现有值的向量,我使用std :: find,如下所示:
std::vector<int> foo;
std::vector<int>::iterator pos( std::find( foo.begin(), foo.end(), bar );
Run Code Online (Sandbox Code Playgroud)
这是一个真正的问题.所以我从std :: vector派生了一个模板来提供一个find方法:
template<class T>
class foovector : public std::vector<T>
{
public:
typename std::vector<T>::iterator find( const T& value )
{
return std::find( this->begin(), this->end(), value );
}
};
Run Code Online (Sandbox Code Playgroud)
所以现在我可以更自然地找到它:
foovector<int> foo;
foovector<int>::iterator pos( foo.find( bar ) );
Run Code Online (Sandbox Code Playgroud)
我的问题是,这似乎是向量的一个自然而明显的扩展,那么为什么它不是STL的一部分甚至是提升?我觉得我在这里错过了一些奥术知识.
c# ×3
wcf ×3
html ×2
.net ×1
batch-file ×1
c++ ×1
css ×1
find ×1
haskell ×1
ipad ×1
list ×1
meta-tags ×1
monads ×1
performance ×1
php ×1
python ×1
root ×1
silverlight ×1
stl ×1
viewport ×1
wcf-client ×1
web-services ×1
windows ×1
wpf ×1
wpf-controls ×1