我需要持久化闭包,但是在Swift中可用的任何持久化方法似乎都不可能,而且我似乎也找不到任何信息。
由于闭包的“代码”部分是固定的(已编译),因此无需持久化,因此只需要使用关键字或其他标识符保留对其的引用。这可以通过使用带有引用功能的字典来实现(例如,功能工厂)。
实际需要持久性的是闭包捕获的变量。这等效于函数的参数。
因此,基本上,您应该以不同的方式处理问题,并定义一组函数关键字和参数列表。您可以轻松地将其持久化,然后通过将参数传递给与关键字关联的函数的工厂来“执行”数据。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句