我已经是一个相当常规的emacs用户大约4年了,但在定制emacs和故障排除elisp方面,我仍然是新手.最近,我开始将emacs定制为我的ruby开发环境,我从StackOverflow中的人员那里学到了一些技巧.例如,这里的一些人告诉我有关Cu CMx用edebug检测函数然后逐步执行代码.我还发现,emacs中的大多数命令和模式都提供了大量的钩子(函数或正则表达式或可自定义的变量),这些钩子将提供任何新手想要的大部分内容.
现在我很贪心 - 我正在寻找你曾经使用并且过去发现有用的更多技巧和技巧.
我正在努力加快编译我的应用程序所花费的时间,而我正在调查的一件事是检查哪些资源,如果有的话,我可以添加到构建机器以加快速度.为此,我如何确定是否应该投入更多的CPU,更多的RAM,更好的硬盘或者该进程是否受到其他资源的约束?我已经看到了这个(如何检查应用程序是cpu绑定还是内存绑定?)并且我正在寻找更多提示和指针.
到目前为止我尝试过的:
在构建计算机上与本地计算机上的进程计时.我发现构建机器需要的时间是我的机器的两倍.
运行"资源监视器"并查看进程运行时的CPU使用率,内存使用情况和磁盘使用情况 - 在执行此操作时,我无法解释数字,主要是因为我不明白每个列的含义以及转换为虚拟机与物理盒以及多CPU盒的含义.
windows performance resources performancecounter virtual-machine
我有一个相当复杂的应用程序,它已被分解为多个组件.每个组件都有一个包含大量项目的解决方案文件.所以我喜欢把它想象成一个组件中有多个项目/ dll.还有一个"共同"组件.所有其他组件都依赖于"共同".所以编译是这样的:
"nant component1.compile"将编译"common"然后编译component1,因为component1依赖于"common".随着时间的推移,"共同"变得相当大.我很确定它可以分成几个较小的组件.然后组件需要仅依赖于这些较小的,破碎的"共同"中的一些.这有望减少不同组件的编译时间.
所以问题:我想要显示应用程序中所有不同项目之间的依赖关系,同时标记项目所属的组件.你会怎么做?
我与tramp和cygwin-mount有一个奇怪的交互(我认为:Emacs:Tab文件名的完成附加了一个额外的i:\ cygwin).因此,我想禁用tramp.我无法在明确加载tramp的.emacs中找到任何内容.当我点击查找文件迷你缓冲区中的选项卡时,我可以看到"正在加载tramp ...".我想弄清楚什么包导致了tramp的加载并禁用它.我该怎么做呢?我试着寻找(需要'tramp)但找不到任何有趣的东西.我能想到的唯一另一个选择是逐一评论我的.emacs中的一些,看看哪一个有效 - 但这是如此蛮力,我想要一个更聪明(更容易)的方式.
假设我有两个项目A和B. A取决于B.我可以用两种方式指定:
我的问题是,一旦我为A构建程序集,这两种方法之间的最终输出是否存在差异.
我尝试创建几个简单的项目来模拟这种关系并尝试比较 - 但不同的比较工具告诉我不同的东西.在写一些逐字节比较这些文件的东西时,我想知道你们是否对此有所了解.具体来说,如果我使用dll引用而不是项目引用,构建的程序集的行为是否会有任何差异.
我有一个Silverlight应用程序,它有两个不同的XAP - 一个由HTML页面静态加载的InitialXAP和一个从初始XAP中的代码加载的DynamicXAP.DynamicXAP加载了与此类似的代码:
var asm = LoadAssemblyFromXap(stream, "DLLName");
// LoadAssemblyFromXAP will load the DynamicXAP as a file stream,
// unpack it and load DLLName as a dll.
var controllerType = asm.GetType("ClassNameToInstantiate_InsideAsm");
var constructor = controllerType.GetConstructor(Type.EmptyTypes);
return constructor.Invoke(null);
Run Code Online (Sandbox Code Playgroud)
我有一个使用反射(特别是FieldInfo.GetValue)来进行数据绑定的类.该类在InitialXAP中定义.如果我尝试在DynamicXAP中使用此类,则会收到错误消息:
Message: Unhandled Error in Silverlight Application System.FieldAccessException: Class.In.DynamicXAP.Which.Uses.The.Reflection.Class.In.InitialXAP
at System.Reflection.RtFieldInfo.PerformVisibilityCheckOnField(IntPtr field, Object target, IntPtr declaringType, FieldAttributes attr, UInt32 invocationFlags)
at System.Reflection.RtFieldInfo.InternalGetValue(Object obj, Boolean doVisibilityCheck, Boolean doCheckConsistency)
at System.Reflection.RtFieldInfo.InternalGetValue(Object obj, Boolean doVisibilityCheck)
at System.Reflection.RtFieldInfo.GetValue(Object obj)
Run Code Online (Sandbox Code Playgroud)
我可以通过使用反射创建类的子类并使用反射覆盖方法来解决此错误,如下所示:
public class InitialXAP.ClassUsingReflection {
public virtual object …Run Code Online (Sandbox Code Playgroud) 我有来自这里的 helloworld 应用程序,并进行了一些修改。
一切都在本地主机上运行。我可以在 localhost:8080 上看到 hello 消息。当我尝试执行 gcloud 应用程序部署时,出现以下错误:
staging for go1.11
Staging Flex app: failed analyzing /home/.../code/app-engine-gomod: cannot find package "github.com/sirupsen/logrus" in any of:
($GOROOT not set)
/home/.../go/src/github.com/sirupsen/logrus (from $GOPATH)
GOPATH: /home/.../go
Run Code Online (Sandbox Code Playgroud)
我试过和没有go mod vendor都无济于事。我究竟做错了什么?
我正在 WSL(Windows 上的 bash)中构建 go 程序,将输出文件夹作为卷安装在 centos docker 容器中并尝试运行该程序。当尝试像这样运行程序时:
docker exec -it <container-instance> /bin/sh
# ./<program-name>
Run Code Online (Sandbox Code Playgroud)
我得到:
/bin/sh: ./<program-name>: not found
Run Code Online (Sandbox Code Playgroud)
是什么赋予了?
我正在尝试将 helloworld 应用程序(此处的源代码)部署到灵活的应用程序引擎。当我在不更改代码的情况下部署它时,一切正常。但是我想用go1.11,所以把app.yaml改了说
runtime: go111 # changed from runtime: go
Run Code Online (Sandbox Code Playgroud)
我得到错误:
Beginning deployment of service [default]...
Building and pushing image for service [default]
ERROR: (gcloud.app.deploy) Your application does not satisfy all of the requirements for a runtime of type [go111]. Please correct the errors and try again.
Run Code Online (Sandbox Code Playgroud)
这不是一个非常有用的错误消息,谷歌搜索到目前为止也没有帮助。我能做些什么来调试/修复这个问题?
go ×3
.net ×2
c# ×2
elisp ×2
emacs ×2
csproj ×1
dependencies ×1
docker ×1
go-modules ×1
performance ×1
reflection ×1
resources ×1
silverlight ×1
tramp ×1
windows ×1