小编Kav*_*u S的帖子

Flow LifeCycle 是否识别为 LiveData?

我们知道LiveData 具有生命周期感知能力,如果配置发生更改,LiveData 对象不会每次都从数据库(本地/远程)重新查询,并且仅当数据有任何更新时才会更新。

最近我开始使用Kotlin Flow,我应该承认它最适合数据层,即在存储库中实现,以便通知 ViewModel。但我也在 ViewModel/View 层中使用了Kotlin Flow,以便直接根据其状态collect(密封类实现)来确定Fragment 中的 Flow 对象。我在使用 Flow 时遇到的问题是每次配置更改时都会从数据库(本地/远程)检索数据。

这种情况应该怎么办?有没有办法在使用 Flow 时避免重新查询,或者我应该只在 ViewModel/View 层中使用 LiveData?

示例代码

sealed class Status<T> {
class Processing<T> : Status<T>()
data class Completed<T>(val value: T) : Status<T>()
data class Error<T>(val error: String) : Status<T>()

companion object {
    fun <T> processing() = Processing<T>()
    fun <T> completed(value: T) = Completed(value)
    fun <T> error(error: String) = Error<T>(error)
    }
}
Run Code Online (Sandbox Code Playgroud)

回购协议:

class Repo(database: LocalDatabase){
     fun retrieveUsersData() …
Run Code Online (Sandbox Code Playgroud)

android kotlin android-livedata kotlin-flow

7
推荐指数
2
解决办法
5120
查看次数

运行时错误:为 ResNet 加载 state_dict 时出错:

我正在使用以下代码加载我的模型。

def load_model(checkpoint_path):
  '''
  Function that loads a checkpoint and rebuilds the model
  '''

  checkpoint = torch.load(checkpoint_path, map_location = 'cpu')

  if checkpoint['architecture'] == 'resnet18':
    model = models.resnet18(pretrained=True)

  # Freezing the parameters
    for param in model.parameters():
        param.requires_grad = False


  else:
    print('Wrong Architecture!')
    return None

  model.class_to_idx = checkpoint['class_to_idx']

  classifier = nn.Sequential(OrderedDict([
                            ('fc1', nn.Linear(512, 1024)),
                            ('relu1', nn.ReLU()),
                            ('dropout', nn.Dropout(0.2)),
                            ('fc2', nn.Linear(1024, 102))
                            ]))


  model.fc = classifier

  model.load_state_dict(checkpoint['state_dict'])

  return model
Run Code Online (Sandbox Code Playgroud)

并且在跑步时

# Load your model to this variable
model = load_model('checkpoint.pt')
Run Code Online (Sandbox Code Playgroud)

我收到以下错误,

RuntimeError Traceback …

python-3.x deep-learning resnet pytorch

4
推荐指数
1
解决办法
1万
查看次数

如何在 Flutter 中使用 PageView 使上一个和下一个项目可见?

如何使 PageView 的上一个和下一个项目在屏幕的末端稍微可见?

在此处输入图片说明

pageviews dart flutter

2
推荐指数
1
解决办法
1794
查看次数