草庐IT

task_struct

全部标签

Swift Struct 的引用计数

我有一个关于结构的问题在WWDC2016中,session推荐使用sturct(值类型)但是如果结构有3个以上的内联变量字,结构必须管理引用计数以将大值存储到堆中那么我的问题是当结构有3个另一个结构并且每个结构有2或3个另一个结构或值类型时我想知道在这种情况下是否使用引用计数是如何工作的下面是结构的例子structViewModel{vartitleModel:TitleModelvarcontentModel:ContentModelvarlayoutModel:LayoutModel}structTitleModel{vartext:Stringvarwidth:Floatvarh

Apache Flink——任务(Tasks)和任务槽(Task Slots)

一、任务槽(TaskSlots)Flink中每一个worker(也就是TaskManager)都是一个JVM进程,它可以启动多个独立的线程,来并行执行多个子任务(subtask)。TaskManager的计算资源是有限的,并不是所有任务都可以放在一个TaskManager上并行执行。并行的任务越多,每个线程的资源就会越少。为了控制并发量,我们需要在TaskManager上对每个任务运行所占用的资源做出明确的划分,这就是所谓的任务槽(taskslots)。每个任务槽(taskslot)其实表示了TaskManager拥有计算资源的一个固定大小的子集。这些资源就是用来独立执行一个子任务的。假如一个

ios - 为什么我们需要为 Swift 中的类编写初始化程序,而不是为 Struct 编写初始化程序

这个问题在这里已经有了答案:Whydoesn'tSwiftprovideclassesmemberwiseinitializers?(1个回答)关闭6年前。Swift为struct类型提供MemberwiseInitializers。但是当涉及到class时,我们需要自己显式提供一个init()。我试图理解这样一个决定背后的逻辑。示例,structSomeStruct{varsomeVar:Int}//MemberwiseInitializersletstructInstance=SomeStruct(someVar:0)classSomeClass{varsomeVar:Int}le

ios - 如何比较两个 Struct 对象?

这个问题在这里已经有了答案:ComparetwoinstancesofanobjectinSwift(4个答案)关闭5年前。对于具有不同值的同一个结构类,我有两个对象。我需要比较这两个对象是否相等。请指导我找到合适的解决方案。structCustomerInfo{varbillAddressCity:String?init(a:String?){billAddressCity=a}}/*initobject*/varobj1=CustomerInfo?varobj2=CustomerInfo?obj1=CustomerInfo(a:"ONE")obj2=CustomerInfo(a:"

Swift 如何将 `struct` 的默认初始值设定项设为私有(private)

我们的代码中有这样的结构:structFoo{letbar:StringstaticletsharedInstance=Foo(bar:"blah")}除了调用者仍然可以用初始化Foo实例的另一个实异常(exception),它工作得很好letfoo=Foo.init(bar:"blah")有没有办法让生成的初始化程序私有(private)化?我们尝试像这样显式定义初始值设定项:structFoo{letbar:StringstaticletsharedInstance=Foo(bar:"blah")privateinit(bar:String){self.bar=bar}}它可以工作

C++和Swift : How are structs handled in C++ stack frames? struct继承的复杂性为什么Swift不支持struct继承?

在最近的一次开发者聚会上,简要讨论了Swift中的struct继承(或者更准确地说,Swift中缺少struct继承)的主题。我假设Swift不支持struct继承的原因是因为:struct是值类型值类型在堆栈帧之间复制继承意味着struct的大小可以变化(例如,如果Lorry继承自Vehicle和Lorry添加.weightCapacity然后Lorry将比Vehicle需要更多的空间)具有在编译时未知大小的值类型参数会使调用者的栈帧构造和被调用者访问数据变得复杂我假设正是由于这些复杂性,这可能会为涉及struct的每个函数调用添加额外的操作,从而降低性能,Swift不允许struc

Go Struct

结构体(简称struct)用于创建不同数据类型的成员集合,放入一个单一的变量中。虽然数组用于将相同数据类型的多个值存储在单一变量中,但结构体用于将不同数据类型的多个值存储在单一变量中。结构体对于将数据组合在一起以创建记录非常有用。声明结构体要在Go中声明一个结构体,请使用type和struct关键字:语法type结构体名struct{成员1数据类型;成员2数据类型;成员3数据类型;...}示例在这里,我们声明了一个名为Person的结构体类型,其中包含以下成员:name、age、job和salary:typePersonstruct{namestringageintjobstringsalar

ios - 将 swift struct 指针传递给 C 函数

比方说,我有一个名为Foo的Swift结构structFoo{vara,b,c:Floatvard:Doubleinit(){a=0b=0c=0d=0}}Swiftsizeof(Foo)在arm64上打印24个字节,4个字节用于Float字段,8个用于Double和4个字节的填充。所以我认为,在结构对齐方面没有特殊的Swift魔法,我们可以自由地将指向它的指针传递给内部C函数,以便使用像NEON和Metal这样的东西,只要内置变量是联合,目前不能直接包含在Swift中不知何故,当我尝试使用constvoid*时(Swift中的ConstUnsafePointer)leta=Foo()l

struct - 将结构内的 C 字符串转换为 Swift 字符串

我在Swift应用程序中使用现有的C库,并尝试将C字符缓冲区转换为Swift字符串。桥接.htypedefstruct{charmfg[8];charmodel[8];}motorcycle;voidGetMotorcycle(motorcycle*m);示例.swiftvarcycle=motorcycle(mfg:(0,0,0,0,0,0,0,0),model:(0,0,0,0,0,0,0,0));GetMotorcycle(&cycle)varmanufacturer:String=String.fromCString(cycle.mfg)//Error这会产生“找不到接受所提供

ios - swift 错误 : Struct 'XX' must be completely initialized before a member is stored to

我正在尝试在Swift中定义AudioStreamBasicDescription。在Objective-C中,我使用了如下代码。AudioStreamBasicDescriptionASBD;ASBD.mSampleRate=8000;ASBD.mFormatID=kAudioFormatLinearPCM;ASBD.mFormatFlags=kAudioFormatFlagsCanonical|kAudioFormatFlagIsSignedInteger|kAudioFormatFlagIsPacked;ASBD.mFramesPerPacket=1;ASBD.mChannels