0

我使用GoogleAppengineLauncher創建了應用程序引擎端點api,我正在使用它加載。該api發射罰款。但是當我嘗試加載用於測試的API瀏覽器時,由於行from multiprocessing import Process,我得到一個錯誤。我的研究導致我to this site。但是這對我不起作用。有誰知道如何解決這一問題?由於導入_multiprocessing導致的應用程序引擎錯誤

from multiprocessing import Process 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/multiprocessing/__init__.py", line 84, in <module> 
    import _multiprocessing 
    File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/devappserver2/python/sandbox.py", line 861, in load_module 
    raise ImportError 
ImportError 
INFO  2013-03-25 23:46:32,229 server.py:528] "POST /_ah/spi/BackendService.getApiConfigs HTTP/1.1" 500 - 
INFO  2013-03-25 23:46:32,229 server.py:528] "GET /_ah/api/discovery/v1/apis HTTP/1.1" 500 60 
+0

該博客文章是從2009年起,不再相關。也就是說,你不能導入'_multiprocessing',因爲App Engine不支持它。你爲什麼要使用它? – bossylobster 2013-03-26 00:08:00

+0

@bossylobster使用'value = blob_reader.read()'從blobstore中加載Blobstore的圖片,但不必阻止。 – learner 2013-03-26 00:12:40

+0

實際上沒有辦法做到這一點,但您可以使用'ndb' [期貨](https://developers.google.com/appengine/docs/python/ndb/async#urlfetch)接近你需要的東西。 – bossylobster 2013-03-26 00:41:42

回答

1

在這種group thread,Python的2.7 App Engine的運行工程師的一個點出替代品(即futures包)應該與新的Python 2.7 threading support工作。

或者,您可以使用fetch_data_async函數在不阻塞的情況下從blob讀取數據。

fetch_data_rpc = blobstore.fetch_data_async(...) 
other_processing() 
upload_url = fetch_data_rpc.get_result() 
+0

我還沒有驗證它,但從閱讀它看起來應該做的伎倆。謝謝。 – learner 2013-03-26 07:35:45

相關問題