Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 在Kotlin中构建自己的缓存_Android_Kotlin_Caching - Fatal编程技术网

Android 在Kotlin中构建自己的缓存

Android 在Kotlin中构建自己的缓存,android,kotlin,caching,Android,Kotlin,Caching,我有一个包含四个元素的列表:created\u at、text、name、screen\u name。第一个表示创建日期,第二个表示tweet的texto,最后一个表示用户名和用户名。 我想用寿命存储这些信息,一个随机的寿命。为此,我考虑使用缓存和实现此链接 我的问题是: 使用一个映射键值并在值中保存一个字符串,其中包含创建的所有信息、文本、名称、屏幕名称? 如何使用此代码在地图中添加此信息? 请给我一个存储此数据的示例。或者,如果有其他方法使我想要的更准确,告诉我 我现在的代码是: class

我有一个包含四个元素的列表:created\u at、text、name、screen\u name。第一个表示创建日期,第二个表示tweet的texto,最后一个表示用户名和用户名。 我想用寿命存储这些信息,一个随机的寿命。为此,我考虑使用缓存和实现此链接

我的问题是:

使用一个映射键值并在值中保存一个字符串,其中包含创建的所有信息、文本、名称、屏幕名称? 如何使用此代码在地图中添加此信息? 请给我一个存储此数据的示例。或者,如果有其他方法使我想要的更准确,告诉我

我现在的代码是:

class ExpirableCache(private val delegate: Cache, private val flushInterval: Long = TimeUnit.MINUTES.toMillis(1000)) : Cache {
    private val dataTweet: Map<Long, Long>? = null

    private var lastFlushTime = System.nanoTime()

    override val size: Int
        get() = delegate.size

    override fun set(key: Any, value: Any) {
        delegate[key] = value
    }

    override fun remove(key: Any): Any? {
        recycle()
        return delegate.remove(key)
    }

    override fun get(key: Any): Any? {
        recycle()
        return delegate[key]
    }

    override fun add(key: Any, value: Any) {
        dataTweet[0, value]
    }

    override fun clear() = delegate.clear()

    private fun recycle() {
        val shouldRecycle = System.nanoTime() - lastFlushTime >= TimeUnit.MILLISECONDS.toNanos(flushInterval)
        if (!shouldRecycle) return
        delegate.clear()
    }
}

我认为这更多地属于代码审查部分——我认为这更多地属于代码审查部分-