【发布时间】:2020-02-05 15:56:24
【问题描述】:
我正在开发一个使用平板扫描仪的 Django 项目。连接到扫描仪需要很长时间。所以我正在寻找一种方法来重用扫描仪实例。
序列化似乎是解决此问题的最佳方法。不幸的是,我无法序列化或腌制扫描仪实例。我不断遇到错误,告诉我序列化失败了。
是否有其他方法可以重复使用同一个扫描仪实例进行多次扫描?后端技巧还是一些前端魔术? (注意,我对前端开发一无所知。)
我们可以作弊!
项目将在本地计算机上离线运行,根本没有互联网或网络连接。这可能会提供不安全的选项。
我用来扫描的东西
- sane,用于访问扫描仪的软件包
- python3-sane,一个用于 sane 的 Python 包装器
- Image Scan,扫描仪驱动
【问题讨论】:
-
编写一个连接到扫描仪的服务,并从你的 django 应用程序连接到这个服务。这样,服务进程可以在请求之间保持扫描仪连接打开。
-
@brunodesthuilliers 我找到了有关如何将 python 脚本作为服务运行的信息。但是我很难找到有关如何与该服务交互的信息,我不知道该怎么做。你能指出我正确的方向吗?
-
嗯,编写服务需要的不仅仅是“将 python 脚本作为服务运行”,事实上 - 你必须定义通信协议、API 等,而且只有你知道会是什么最适合您的项目和环境。您正在寻找的是“进程间通信”。
-
@brunodesthuilliers 我找到了使用 RPyC 的解决方案,感谢您的提示!永远不会对运行服务感到艰难。
-
很高兴我能帮上忙 ;-)