Это однопоточность, синхронное (последовательное) выполнение задач.
Swift позволяет выполнять задачи в однопоточном режиме, но пользоваться этим механизмом нужно с осторожностью. К примеру, вы можете случайно заморозить интерфейс, пока не закончится загрузка данных с сервера.
Мне потребовались года, чтобы понять, что однопоточность нужно с осторожностью использовать в приложениях, но постоянно использовать в профессиональной жизни.
За все это время я узнал десятки неправильных способов организации рабочего времени, на то, чтобы в конце концов прийти к однопоточности в своей работе. Оказалось, что мне не нужно «25 часов», мне нужно пересмотреть свой подход к работе.
Используйте однопоточность, когда делаете свою работу, выкиньте в помойку свой навык многопоточности. Все довольно просто:
1. Все задачи выполняются последовательно. Пока не завершена одна задача, я не перехожу ко второй.
2. Каждая новая задача занимает свое место в последовательности в соответствии с ее «важностью». Как определить важность? Спросите себя, чем обернется невыполнение задачи через 1-2 года. Для меня было открытием, но оказалось, что далеко не каждая задача, поступающая в режиме «надо прям сейчас, иначе хана», требует немедленной реакции и не способна отлежаться, по крайней мере до послеобеда.
3. Процесс работы делите на небольшие отрезки работа/отдых. Это так называемая техника Помодоро, когда вы, например, работаете 25 минут, после чего 5 минут отдыхаете.
4. В конце рабочего дня подводите итоги сегодняшнего дня и составляйте план на завтра, выделяя 1-2 наиболее важных дела. Остальные идут с пометкой «если будет возможность».
P.S. Очевидно, что вы практически не сможете заниматься одной задачей весь день, этого и не требуется. Рассматривайте однопоточность как в глобальном плане, когда вы не занимаетесь задачами из одной категории одновременно, так и в локальном, в рамках одного дня.
Post #22
935
- 👍 2