Эта функция вызывается каждую секунду и выходит за пределы обычного обновления.
def start(self,parent):
self.close=False
self.Refresh(parent)
def Refresh(self,parent):
'''your code'''
if(self.close == False):
frame.after( UpdateDelay*1000, self.Refresh, parent)
Функция вызывается одна, и все, что происходит внутри нее, не блокирует нормальную работу интерфейса.
Проверьте эту статью. http://kennyw.com/?p=51
Это предлагает обнулить MaxBufferPoolSize для больших сообщений, чтобы не буферизовать.
Нормально совершенно переводить большие объемы данных к основанному на WCF сервису, но необходимо изучить привязку, которая поддерживает потоковую передачу вместо буферизированных передач (BasicHttpBinding или CustomBinding), таким образом, каждый сервисный экземпляр не делает пожирателя ресурсов слишком много памяти.
- larsw
При попытке передать файлы и такой, это походит на Вашу единственную опцию. Иначе я рассмотрел бы, почему такие большие части данных отправляются через сервис во-первых. Если это - файлы и такой, необходимо будет просто жить с тем большим размером и возможными последствиями. Вы также, снова если это - файлы, которые Вы перемещаете, могли бы хотеть попробовать компонент FTP или что-то вместо этого.
Я мог предоставить больше информации с небольшой разработкой. Я перепроверю позже, чтобы видеть, добавили ли Вы что-нибудь к своему вопросу.
5 Мбит походят на большое количество данных для передачи по веб-сервису. Первая вещь, которую необходимо искать, состоит в том, чтобы отправить меньше данных. Во-вторых, необходимо установить размер на потребности.