草庐IT

Shared_ptr

全部标签

c++ - shared_ptr 和 iOS 中的引用计数是同一个思路吗?

我对C++或iOS都不是很有经验,所以我很好奇iOS的引用计数在boost共享指针和NSObject中的工作原理是否基本相同? 最佳答案 据我收集here,使用ARC与使用std::shared_ptr(“强”指针)和std::weak_ptr(“弱”指针)非常相似。滥用前者,避免后者。无论如何,如果可以的话,请选择std::unique_ptr。(另外,我有点惊讶你在为iOS编程时必须手动释放指针。在21世纪。) 关于c++-shared_ptr和iOS中的引用计数是同一个思路吗?,我

【并发编程五】c++进程通信——共享内存(shared memmory)

【并发编程四】c++进程通信——共享内存(sharedmemmory)一、共享内存(sharedmemmory)二、共享内存的过程1、processA写入共享内存2、processB读取共享内存三、代码demo1、processAdemo2、processBdemo四、输出五、共享内存的问题一、共享内存(sharedmemmory)消息队列的读取和写⼊的过程,都会有发⽣⽤户态与内核态之间的消息拷⻉过程。那共享内存的⽅式,就很好的解决了这⼀问题。现代操作系统,对于内存管理,采⽤的是虚拟内存技术,也就是每个进程都有⾃⼰独⽴的虚拟内存空间,不同进程的虚拟内存映射到不同的物理内存中。所以,即使进程A中

ios - "Access to PassKit Shared Cache file denied. ..."?

我在iOS11下的应用正在记录:AccesstoPassKitSharedCachefiledenied.Pleaseverifysandboxexceptionsand/orfileaRadar.以前没见过。有谁知道这是从哪里来的?(我的应用程序使用低级钥匙串(keychain)方法而不是PassKit。但HockeyApp似乎是。) 最佳答案 我遇到了同样的错误,我用下面的代码修复了letvc=CNContactViewController(forNewContact:contact)vc.delegate=selfletnav

ios - iOS 9 及更低版本的 UIApplication.shared().open() 的替代方法是什么?

这个问题在这里已经有了答案:SwiftOpenLinkinSafari(11个答案)关闭6年前。之前我使用XCode8beta3并在iOS10设备上测试它。但现在我希望我的应用程序支持以前版本的iOS。当我在从项目设置中减少部署目标后尝试在iOS9设备上运行它时,此特定方法显示错误,因为它仅适用于iOS10.0或更新版本:UIApplication.shared().open((urlasURL),options:[:],completionHandler:nil)

boost::asio::read 抛出编译错误 'read_some' 不是 'boost::shared_ptr<boost::asio::ip::tcp::socket>' 的成员

我正在尝试构建一个客户端以通过特定协议(protocol)从服务器获取数据。我知道我的代码不是最好的-但目前我仍在试验BoostASIO的基本功能。我想从TCP-Function中实现读取,它会阻塞直到接收到特定数量的字节。我的问题:当我调用boost::asio::read或boost::asio::write时出现以下错误:错误C2039:“read_some”:不是boost::shared_ptr的成员我正在使用VS2013Professional,Boost1.55.00(预编译)。这是我的代码:(您可以通过注释“//HEEERE”找到该行boost::mutexcout_l

tcp - 网络套接字 : do they shared the connection?

如果我有多个资源请求,它们是否共享连接?所以如果我有这些请求:ws://someserver.com/path/somedata1ws://someserver.com/path/somedata2ws://somsserver.com/anotherpath/someotherdata根据我目前所读的内容,我必须创建3个websocket才能从这些url获取数据。我见过的所有示例都打开连接、获取数据并关闭连接。但是,如果我创建了3个websocket,它们(在幕后)是否共享一个到someserver.com的连接?或者它们是3个独立的连接?意思是链接的每一侧有3个socket,等等。

ios - URLSession.shared 请求崩溃 Swift 3

为什么这个东西崩溃就是想不通varrequest=URLRequest(url:URL(string:url)!)request.httpMethod="POST"request.httpBody=try!JSONSerialization.data(withJSONObject:params,options:[])request.addValue("application/json",forHTTPHeaderField:"Content-Type")lettask=URLSession.shared.dataTask(with:request,completionHandler:{

ios - INVoiceShortcutCenter.shared.setShortcutSuggestions(suggestions) 在 iOS 13 Beta 中崩溃。 Xcode 11 测试版

我的代码非常简单。我不确定问题出在哪里,也找不到解决方案。varsuggestions=[INShortcut]()forcomponentincomponents{ifletuserActivity=UserActivityGenerator.getUserActivity(component:component){letshortCut=INShortcut.init(userActivity:userActivity)suggestions.append(shortCut)}}INVoiceShortcutCenter.shared.setShortcutSuggestions(

swift - 在 Swift 3 中将 C 数组 ptr 转换为 native 数组

我有一个来自C库的指向float数组的指针。它的类型是UnsafeMutablePointer。如何在Swift3中由此创建原生[Float]数组?这是我正在尝试的:varreconstructedFloats=[Float](repeatElement(0,count:size))reconstructedFloats.withUnsafeMutableBufferPointer{letreconstructedFloatsPtr=$0print(type(of:$0))//"UnsafeMutableBufferPointer"cFloatArrayPtr?.withMemoryR

ios - 在 iOS 扩展和应用程序之间使用 UIApplication.shared 共享 CocoaPod

我有一个我编写的定制私有(private)CocoaPod。我正在尝试在我的iOS应用程序中使用它,它运行良好。但是当我将它添加到我的iMessage应用程序或共享扩展时它失败并给我一个错误'shared'isunavailable:Useviewcontrollerbasedsolutionswhereappropriateinstead.当尝试使用UIApplication.共享。我首先想到如何解决这个问题是添加一个Swift标志IN_EXTENSION或类似的东西。然后将代码包装在#ifblock中。问题是CocoaPod源的目标位于某种类型的框架中。源不直接属于应用程序或扩展程