RCBacktrace

Getting backtrace of any thread for Objective-C and Swift

139
24
Swift

RCBacktrace

badge-pms
badge-platforms
badge-languages
Swift Version

Getting backtrace of any thread for Objective-C and Swift. Only a small amount of C code, almost all done in Swift.
It is is much more powerful than Thread.callStackSymbols, callStackSymbols can only get the current thread call stack symbol, and the symbol not Name Mangling in Swift。

Features

  • [x] Support both Objective-C and Swift
  • [x] Support get backtrace of any thread
  • [x] Support swift_demangle

Usage

setup

RCBacktrace.setup()

callstack of thead

let symbols = RCBacktrace.callstack(.main)
for symbol in symbols {
    print(symbol.description)
}

Screen Shot 2019-08-27 at 10.40.02 PM.png

≈ Requirements

  • iOS 8.0+
  • Swift 4.0-5.x

Installation

Carthage

Add the following line to your Cartfile

git "https://github.com/woshiccm/RCBacktrace.git" "0.1.6"

CocoaPods

CocoaPods is a dependency manager for Cocoa projects. To integrate Aspect into your Xcode project using CocoaPods, specify it in your Podfile:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '10.0'
use_frameworks!

target 'xxxx' do
    pod 'RCBacktrace', '~> 0.1.6'
end

License

Aspect is released under the MIT license. See LICENSE for details.