You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
817 B
33 lines
817 B
![]()
2 years ago
|
//
|
||
|
// Platform.Linux.swift
|
||
|
// Platform
|
||
|
//
|
||
|
// Created by Krunoslav Zaher on 12/29/15.
|
||
|
// Copyright © 2015 Krunoslav Zaher. All rights reserved.
|
||
|
//
|
||
|
|
||
|
#if os(Linux)
|
||
|
|
||
|
import class Foundation.Thread
|
||
|
|
||
|
extension Thread {
|
||
|
|
||
|
static func setThreadLocalStorageValue<T: AnyObject>(_ value: T?, forKey key: String) {
|
||
|
if let newValue = value {
|
||
|
Thread.current.threadDictionary[key] = newValue
|
||
|
}
|
||
|
else {
|
||
|
Thread.current.threadDictionary[key] = nil
|
||
|
}
|
||
|
}
|
||
|
|
||
|
static func getThreadLocalStorageValueForKey<T: AnyObject>(_ key: String) -> T? {
|
||
|
let currentThread = Thread.current
|
||
|
let threadDictionary = currentThread.threadDictionary
|
||
|
|
||
|
return threadDictionary[key] as? T
|
||
|
}
|
||
|
}
|
||
|
|
||
|
#endif
|