alibaba / alibaba/HandyJSON

升级到4.0.0-beta1之后解析时间成倍延长,控制台打印很多数据

Open
#195 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Swift
Stars
4.3k
Forks
677
PR merge metrics
No merged PRs in 30d

Description

项目升级到swift4之后更新pod库到4.0.0-beta1,之后解析时间会成倍增长,控制台疯狂输出:
打印如下:
implicit Objective-C entrypoint -[lxd.RequestAllMallOrders_ReqMOD pageSize] is deprecated and will be removed in Swift 4; add explicit '@objc' to the declaration to emit the Objective-C entrypoint in Swift 4 and suppress this message
、Current stack trace:
0 libswiftCore.dylib 0x000000010250cf50 swift::warning(unsigned int, char const*, ...) + 132
1 libswiftCore.dylib 0x000000010253be54 swift_objc_swift3ImplicitObjCEntrypoint + 452
2 lxd 0x0000000100532b2c @objc SwiftBaseModel.errorCodeMsg.getter + 76
3 Foundation 0x0000000191fcd538 + 264
4 HandyJSON 0x0000000101e75c8c static _ExtendCustomModelType._serializeModelObject(instance:properties:mapper:) + 1400
5 HandyJSON 0x0000000101e74b00 static _ExtendCustomModelType._serializeAny(object:) + 2232
6 HandyJSON 0x0000000101e94ae4 HandyJSON.toJSON() + 136
7 lxd 0x00000001004c952c static Swift_API.queryAllOrderList(parameter:completedClosure:) + 128
8 lxd 0x00000001004c9ac0 @objc static Swift_API.queryAllOrderList(parameter:completedClosure:) + 156
9 lxd 0x00000001005d4518 MyOrderPage.queryOrderList(type:) + 904
10 lxd 0x00000001005d2d24 MyOrderPage.allAction(_:) + 224
11 lxd 0x00000001005d3f74 MyOrderPage.viewDidLoad() + 520
12 lxd 0x00000001005d4424 @objc MyOrderPage.viewDidLoad() + 40
13 UIKit 0x0000000197a6e48c + 148
14 UIKit 0x0000000197c0efc4 + 2136
15 UIKit 0x0000000197c117f8 + 224
16 lxd 0x00000001004d31a0 MyCenterVC_swift.tableView(_:didSelectRowAt:) + 2472
17 lxd 0x00000001004d46a4 @objc MyCenterVC_swift.tableView(_:didSelectRowAt:) + 148
18 UIKit 0x00000001978335ec + 1200
19 UIKit 0x00000001978e3714 + 268
20 UIKit 0x0000000197995470 + 292
21 UIKit 0x0000000197987420 + 528
22 UIKit 0x00000001976fb208 + 132
23 CoreFoundation 0x0000000191584988 + 32
24 CoreFoundation 0x00000001915824bc + 372
25 CoreFoundation 0x00000001915826c0 + 956
26 CoreFoundation 0x00000001914b2bfc CFRunLoopRunSpecific + 424
27 GraphicsServices 0x0000000192f1d010 GSEventRunModal + 100
28 UIKit 0x000000019776dbcc UIApplicationMain + 208
29 lxd 0x00000001004492cc main + 124
30 libdyld.dylib 0x00000001904c1598 + 4、

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the slowdown after updating the pod to 4.0.0-beta1 and Swift 4, then start with HandyJSON.toJSON() and _ExtendCustomModelType._serializeModelObject in the reported stack trace. Check how the implicit Objective-C entrypoint warning is triggered during serialization; done means parsing returns to its prior speed without repeated console warnings.

Written by the indexing model from the issue text.

Assessment

Tech stack
swift
Domain
data
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.