Как установить максимальное использование памяти в python на unix / ma c? - PullRequest
0 голосов
/ 26 февраля 2020

Я пытаюсь установить максимальный объем памяти, доступный для процесса в python, но, похоже, он не работает с использованием resource. Вот программа, которую я имею до сих пор:

FILE_BIG='/Users/david/Desktop/files/XY.csv'
import resource
resource.setrlimit(resource.RLIMIT_DATA, (0.001,0.001))

def csv_reader(filepath):
    file = open(filepath)
    result = file.read().split("\n")
    return result

def main():
    csv_gen = csv_reader(FILE_BIG)
    row_count = 0
    for row in csv_gen:
        row_count += 1
    print(f"Row count is {row_count}")


if __name__ == '__main__':
    main()

Файл, который я пытаюсь открыть и разделить, имеет размер 2 ГБ, а окончательный вывод:

Row count is 2197281

По сути, я ' Я пытаюсь заставить скрипт вызывать MemoryError, но не похоже, чтобы это делалось выше. Я устанавливаю неправильный лимит ресурсов (resource.RLIMIT_DATA) или что-то здесь?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...