草庐IT

weakly-referenced

全部标签

swift - 引用 [weak self] 作为自己? animateWithDuration 内部导致崩溃

如果我在闭包上声明[weakself]并在UIView.animateWithDuration中将self引用为self?>应用会崩溃:someFunc(){[weakself](success)->VoidinUIView.animateWithDuration(0.25){self?.someView.alpha=1;}}使用消息发送到释放的实例但如果我有选择地提前解包self它不会someFunc(){[weakself](success)->Voidinifletweakself=self{UIView.animateWithDuration(0.25){weakself.so

swift - 内部闭包的捕获列表是否需要将 `self` 重新声明为 `weak` 或 `unowned`?

如果我有一个闭包传递给这样的函数:someFunctionWithTrailingClosure{[weakself]inanotherFunctionWithTrailingClosure{[weakself]inself?.doSomething()}}如果我在someFunctionWithTrailingClosure的捕获列表中将self声明为[weakself]而没有在捕获列表中再次将其重新声明为weakanotherFunctionWithTrailingClosureself已经变成了Optional类型,但它是否也变成了weak引用?谢谢!

closures - 为什么 [weak self] 有效但 [unowned self] 在 Swift 闭包中中断?

此SpriteKitAction通过使用完成闭包调用自身来重复。它使用闭包,而不是SKAction.repeatActionForever(),因为它需要在每次重复时生成一个随机变量:classTwinkler:SKSpriteNode{init(){super.init(texture:nil,color:UIColor.whiteColor(),size:CGSize(width:10.0,height:10.0))twinkle()}functwinkle(){letrand0to1=CGFloat(arc4random())/CGFloat(UINT32_MAX)letacti

swift - Swift 中的 weak vs unowned。内部差异是什么?

我了解Swift中weak和unowned的用法和表面差异:我见过的最简单的例子是,如果有一个Dog和一个Bone,那么Bone可能有一个弱引用Dog(反之亦然),因为它们可以彼此独立存在。另一方面,对于Human和Heart,Heart可能有一个unownedcode>对人的引用,因为一旦Human变成...“取消引用”,就无法再合理地访问Heart。这与Customer和CreditCard的经典示例。因此,这不是关于此问题的重复问题。我的问题是,拥有两个如此相似的概念有什么意义?本质上99%相同的事物需要使用两个关键字的内部差异是什么?问题是为什么存在差异,而不是差异是什么。鉴于

Swift 协议(protocol)错误 : 'weak' cannot be applied to non-class type

Protocols和class-boundProtocols有什么区别,我们应该在Swift中使用哪一个?protocolA:class{...}protocolA{...}当协议(protocol)未定义为:class时尝试添加weak委托(delegate)时出现错误:protocolA{...}weakvardelegate:A给出错误:'weak'cannotbeappliedtonon-classtype或'weak'mustnotbeappliedtonon-class-bound'A';consideraddingaprotocolconformancethathasac

C# Entity Framework "An entity object cannot be referenced by multiple instances of IEntityChangeTracker"

这个错误抛的很多,但是我找不到解决办法。我是EntityFramework的新手,在我的第一种方法中遇到了这个错误。这是我的。我有一个公司类(class)和一个分支类(class)。这两个类都有自己的存储库。一个公司有一个分公司,一个分公司可以有多个公司。在我的GUI中,我用从BranchRepository获得的Branch对象填充了一个组合:publicIListGetAllBranches(){varquery=_context.Branches;IListbranches=query.ToList();returnbranches;}这是分支组合框的数据源结果。当我想拯救公司时

c# - 如何解决警告 "Referenced assembly targets a different processor than the application"

我已经能够构建我的Windows窗体应用程序来访问SQLServer中的数据库。除了可以备份/恢复数据库的部分之外,应用程序的所有部分都能够访问服务器。在这部分我无法访问服务器上的数据库并且已经开始相信这是因为这些警告。以下内容的确切含义是什么?我该如何更正它们?Referencedassembly'c:\ProgramFiles\MicrosoftSQLServer\90\SDK\Assemblies\Microsoft.SqlServer.Replication.dll'targetsadifferentprocessorthantheapplicationReferencedas

c# - 链接 : warning AL1073: Referenced assembly 'mscorlib.dll' targets a different processor

我们正在使用VS2013和.Net4.5.1(最近迁移,但此错误来自.Net4.0)。只有在平台目标x64中编译项目时才会出现此错误。这真的是一个会在运行时中断的错误吗?为什么MSBUILD不能正确解析这个mrcorlib.dll?这仅发生在VS2010中创建的项目中,而不会发生在新创建的项目中。我在这里错过了什么。我所有的第三方程序集都是x64位的。在TeamCity构建服务器中,出现以下错误:GenerateSatelliteAssemblies[17:01:18]AL[17:01:18]C:\ProgramFiles(x86)\MicrosoftSDKs\Windows\v8.1

c# - Visual Studio : Debugging a referenced DLL, 我在另一个 SLN 中有源代码

我正在尝试调试一个项目,该项目引用了我添加的DLL,该DLL存储在外部目录中,我只是添加了一个引用。现在我当然可以调试我的项目,但是调用我的其他dll上的方法的行我无法进入它,即F12。我能够做到这一点的一种方法是将我的项目(dll)作为现有项目添加到我的解决方案中,并替换引用的dll以使用附加项目而不是磁盘上的文件。但真是一团糟,我敢肯定有更简洁的方法吗?我似乎记得我是否复制了一些PDB文件或其他内容,但我不记得了。我是否需要打开2个visualstudio副本,1个用于我的主项目,1个用于我引用的DLL?? 最佳答案 在您自己的

c# - 如何修复 "Referenced assembly does not have a strong name"错误

我在我的Visual Studio 2005中添加了一个弱命名程序集项目(强命名)。我现在收到错误:"Referencedassembly'xxxxxxxx'doesnothaveastrongname"我需要签署这个第三方程序集吗? 最佳答案 要避免此错误,您可以:动态加载程序集,或者签署第三方程序集。您将在.NET-fu:SigninganUnsignedAssembly(WithoutDelaySigning)中找到有关签署第三方程序集的说明。签署第三方程序集签署第三方的基本原则是使用ildasm.exe反汇编程序集并保存中间