zoukankan      html  css  js  c++  java
  • 飘逸的python

    一开始我们的游戏商城配置是从txt读取解析的。
    后来为了方便运营修改配置,改成从数据库读取并提供后台可视化编辑配置。
    如果为了使配置生效而重启游戏进程那太麻烦了。
    这时候reload就派上用途了。
    下面演示如何使用reload。
     
    假设有下面3个文件。
    config.txt--纯文本配置
    config.py--解析纯文本配置转换成python变量
    test_reload.py--热更新代码

    一开始item1的值是2350.
    运行test_reload.py并进入交互shell。
    >>config.storeconfig
    'item1 2350'
    这时候修改config.txt,把2350改成888。
    然后在之前的交互shell中
    >>reload_config()
    >>config.storeconfig
    'item1 888'
    可以看到,配置热更新了。

    需要注意的是, reload(m)后,用 from m import variable 方式导入的变量还是旧的。
    解决方法有2种:
    1.改成import m; m.variable的方式。如果坚持要用from module import xxx的方式,可以用第2种方法。
    2.reload后重新import,即
    import m
    from m import variable
    reload(m)
    from m import variable
     

  • 相关阅读:
    线程同步(二)—— 条件变量
    线程同步(一)—— 互斥锁
    进程同步(四)—— 消息队列
    Nginx反向代理服务器的配置
    散列表(hash表)
    浅谈bitmap
    进程空间分配和堆栈大小
    拓扑排序
    归并排序
    快速排序
  • 原文地址:https://www.cnblogs.com/suncoolcat/p/3281304.html
Copyright © 2011-2022 走看看