Паралельність у баші це прям first-class citizen. Трішечки простіших прикладів.
Якщо нам треба послідовно прочитати з двох процессів, то можна виконати щось на кшталт
Дебаг функція (простіше читати ніж strace)
Простий приклад послідовного виконування і читання (увага на дату):
Але якщо ми хочемо послідовно прочитати, але виконувати функції паралельно, то можна зробити так:
А якщо треба паралельно читати і паралельно виконувати то можна зробити дуже просто:
Усе це можна комибінувати
#bash@UkropsDigest #concurency@UkropsDigest #tricks@UkropsDigest
Якщо нам треба послідовно прочитати з двох процессів, то можна виконати щось на кшталт
Дебаг функція (простіше читати ніж strace)
log_with_sleep() {
local label=$1
echo "$(date +"%H:%M:%S.%3N") starting${label}"
sleep 1
echo "$(date +"%H:%M:%S.%3N") end${label}"
}
Простий приклад послідовного виконування і читання (увага на дату):
(log_with_sleep "-1"; log_with_sleep "-2") | cat
# 10:08:06.474 starting-1
# 10:08:07.482 end-1
# 10:08:07.488 starting-2
# 10:08:08.498 end-2
Але якщо ми хочемо послідовно прочитати, але виконувати функції паралельно, то можна зробити так:
cat <(log_with_sleep 1) <(log_with_sleep 2)
# 10:10:05.529 starting1
# 10:10:06.538 end1
# 10:10:05.529 starting2
# 10:10:06.537 end2
А якщо треба паралельно читати і паралельно виконувати то можна зробити дуже просто:
(log_with_sleep "-1" & log_with_sleep "-2"& wait) | cat
# 10:11:43.079 starting-1
# 10:11:43.080 starting-2
# 10:11:44.094 end-1
# 10:11:44.094 end-2
Усе це можна комибінувати
(log_with_sleep "1"; cat <(log_with_sleep "2") <(log_with_sleep "3"); (log_with_sleep "3" & log_with_sleep "4" & wait); log_with_sleep "5") | cat
# 10:30:25.737 starting1
# 10:30:26.748 end1
# 10:30:26.754 starting2
# 10:30:27.763 end2
# 10:30:26.754 starting3
# 10:30:27.765 end3
# 10:30:27.773 starting3
# 10:30:27.775 starting4
# 10:30:28.786 end4
# 10:30:28.789 end3
# 10:30:28.796 starting5
# 10:30:29.805 end5
#bash@UkropsDigest #concurency@UkropsDigest #tricks@UkropsDigest
👍47🤔16🔥12🤯6❤2
This media is not supported in your browser
VIEW IN TELEGRAM
Привіт усім! Ми допомогли закрити збір РЕБ для 116 ОБр ТРО і заказ вже в роботі.
Сподіваюсь за два тижні наші хлопці вже будуть захищені крутим ребом!
Дякую усім хто долучився. Розіграш проведено, відео додаю.
Також, Артем який донатив 19-12-2024 не з монобанку, будь-ласка, напиши мені в приватні повідомлення з якимось підтвердженням платежу і контактною інформацією.
Сподіваюсь за два тижні наші хлопці вже будуть захищені крутим ребом!
Дякую усім хто долучився. Розіграш проведено, відео додаю.
Також, Артем який донатив 19-12-2024 не з монобанку, будь-ласка, напиши мені в приватні повідомлення з якимось підтвердженням платежу і контактною інформацією.
🔥15❤7👍3👏1
Вже кілька тижнів користуюсь jujutsu (VCS, альтернатива git) і переводжу на неї проекти. Виявилось що воно дійсно зручно і закриває деякі проблемні сценарії.
Наприклад, для мене jj закриває такі:
• забуваю переключитись у main з фічебранчі перед тим як починаю наступну фічу
• треба переключитись на main не роблячи коміт у фічебранчу у якій я зараз працюю (git stash/git workspace)
• починаю роботу не знаючи як я буду іменувати наступний бранч
• rebase без необхідності одразу вирішувати конфлікти
Але мені цікаво які сценарії є у вас і де саме гіт не дуже зручний. Буду дивитись як це можна закрити з jujutsu
Наприклад, для мене jj закриває такі:
• забуваю переключитись у main з фічебранчі перед тим як починаю наступну фічу
• треба переключитись на main не роблячи коміт у фічебранчу у якій я зараз працюю (git stash/git workspace)
• починаю роботу не знаючи як я буду іменувати наступний бранч
• rebase без необхідності одразу вирішувати конфлікти
Але мені цікаво які сценарії є у вас і де саме гіт не дуже зручний. Буду дивитись як це можна закрити з jujutsu
🤔18🤯12😱3😁1
Цієї суботи виступаю на fwdays devops
і з приводу цього розігрую один квиток на конференцію.
конфа має бути крута)
Усе як завжди, до кінця дня лишайте коментар з текстом + і я розіграю на random.org
sha для ключа рандомізації: 560d4a74406a19077ad505445a35ba6ce5ce8e60a7200b94abf2d7e4db525511
будь-ласка, приймайте участь якщо будете у Києві цієї суботи)
і з приводу цього розігрую один квиток на конференцію.
конфа має бути крута)
Усе як завжди, до кінця дня лишайте коментар з текстом + і я розіграю на random.org
sha для ключа рандомізації: 560d4a74406a19077ad505445a35ba6ce5ce8e60a7200b94abf2d7e4db525511
будь-ласка, приймайте участь якщо будете у Києві цієї суботи)
Fwdays
DevOps fwdays'25 конференція
DevOps fwdays'25 - конференція, присвячена DevOps практикам та інструментам
🔥19❤1
Media is too big
VIEW IN TELEGRAM
дякую всім за участь, переможець — Nex, відео розіграшу
для усіх хто ще не купив білет — є промокод на 15% знижки 4A91C4612C
для усіх хто ще не купив білет — є промокод на 15% знижки 4A91C4612C
👍12❤4
Привіт!
У роковину повномаштабного вторгення я до вас з новим збором — терміново потрібен прилад нічного бачення для водія Козака, 4 батальон 46 бригади (фото козака у доповненні)
На fwdays DevOps ми вже зібрали майже 150 тисяч, але прилад коштує 220 тисяч. І ця штука дуже дуже дуже потрібна. Воно рятує життя не лише водієві, але і тим кого він везе, тим для кого він везе спорядження і усім нам!
Тому, якщо у вас є змога і якщо вам не байдуже, то будь-ласка, долучайтесь до збору.
В якості подяки, за донат кратний 200, я розіграю одну книжку "Inovation in isolation" про історію українського айті, з підписами усіх офлайн спікерів fwdays devops і ще декілька інших призів.
І хоча деякі вважають що трамп всіх переможе і зробить мир, я вважаю що лише наше ЗСУ гарантує мир. Тому допоможемо їм і вижити і перемогти!
Дякую!
https://send.monobank.ua/jar/vxr5ywPjM
У роковину повномаштабного вторгення я до вас з новим збором — терміново потрібен прилад нічного бачення для водія Козака, 4 батальон 46 бригади (фото козака у доповненні)
На fwdays DevOps ми вже зібрали майже 150 тисяч, але прилад коштує 220 тисяч. І ця штука дуже дуже дуже потрібна. Воно рятує життя не лише водієві, але і тим кого він везе, тим для кого він везе спорядження і усім нам!
Тому, якщо у вас є змога і якщо вам не байдуже, то будь-ласка, долучайтесь до збору.
В якості подяки, за донат кратний 200, я розіграю одну книжку "Inovation in isolation" про історію українського айті, з підписами усіх офлайн спікерів fwdays devops і ще декілька інших призів.
І хоча деякі вважають що трамп всіх переможе і зробить мир, я вважаю що лише наше ЗСУ гарантує мир. Тому допоможемо їм і вижити і перемогти!
Дякую!
https://send.monobank.ua/jar/vxr5ywPjM
🔥33👍6😁3❤2
Ось котик зробив правильний висновок з сьогоднішніх новин.
Єдині на кого можна покладатися це збройні сили України. Донатимо на пристрій нічного бачення, друзі https://send.monobank.ua/jar/vxr5ywPjM
Єдині на кого можна покладатися це збройні сили України. Донатимо на пристрій нічного бачення, друзі https://send.monobank.ua/jar/vxr5ywPjM
❤22👍7😁1
Срач трампа з Зеленським дуже позитивно вплинув на збір 😅
залишилось лише п’ять тисяч! Дякую!
давайте трішечки дожмемо і сьогодні вже замовимо прилад
https://send.monobank.ua/jar/vxr5ywPjM
залишилось лише п’ять тисяч! Дякую!
давайте трішечки дожмемо і сьогодні вже замовимо прилад
https://send.monobank.ua/jar/vxr5ywPjM
send.monobank.ua
Безпечний переказ коштів
Надсилайте безкоштовно та безпечно кошти
😁19❤3
Media is too big
VIEW IN TELEGRAM
дуже дякую усім хто донатив! Будемо замовляти, юху! Відео розіграшу і мої вітання переможцю!
👍20❤6
👍1
Яка сама корисна книга з усіх що ви читали? І як саме ви визначили/заміряли корисність?
Новина, оголошення та питання будуть далі.
Дуже дякую вам!
Прилад нічного бачення вже зібрали, протестували і воно вже допомагає нашим хлопцям виконувати завдання і захищати нас з вами.
Дуже, дуже дякую!
Дуже дякую вам!
Прилад нічного бачення вже зібрали, протестували і воно вже допомагає нашим хлопцям виконувати завдання і захищати нас з вами.
Дуже, дуже дякую!
👍16🔥2❤1
Сьогодні. Пиво. Натюрліх. 19:00.
Акумулятори для рацій для 135 ТРО самі себе не куплять.
І хто буде — допожете мені обрати тему наступного виступа?
Обираю між "jujutsu і gitbutler" і "помиральна яма для DevOps, чому такої спеціальності не буде існувати через п’ять років"
Збір: На акумулятори для рацій для 135 ТРО
🎯Ціль: 80 000.00 ₴
🔗Посилання на банку
https://send.monobank.ua/jar/22v8dtYLZb
💳Номер картки банки
4441 1111 2369 7967
Акумулятори для рацій для 135 ТРО самі себе не куплять.
І хто буде — допожете мені обрати тему наступного виступа?
Обираю між "jujutsu і gitbutler" і "помиральна яма для DevOps, чому такої спеціальності не буде існувати через п’ять років"
Збір: На акумулятори для рацій для 135 ТРО
🎯Ціль: 80 000.00 ₴
🔗Посилання на банку
https://send.monobank.ua/jar/22v8dtYLZb
💳Номер картки банки
4441 1111 2369 7967
send.monobank.ua
Безпечний переказ коштів
Надсилайте безкоштовно та безпечно кошти
❤11👍2🔥1
Please open Telegram to view this post
VIEW IN TELEGRAM
send.monobank.ua
Безпечний переказ коштів
Надсилайте безкоштовно та безпечно кошти
👍12🔥7❤1
«Це не система контролю версій, передусім це механізм дистрибуції та архівування... Я маю надію, що інші СКВ використовуватимуть Git як основу»
— Лінус Торвальдс, квітень 2005 року.
Привіт!
Розігрую квиток на Dou Days, який буде 16 травня і на якому я буду розповідати про gitbutler і jujutsu
Для участі в розіграші треба бути в Києві чи мати змогу приїхати в Київ, залишити плюсик тут в коментарях і почекати (я буду тільки по плюсикам фільтрувати)
Також є знижка (невелика) Polyakov10DOUDay
Якщо у вас більша — залишайте у коментарях також
👍10❤1
This media is not supported in your browser
VIEW IN TELEGRAM
Вітаємо Олександра з перемогою!
🔥13👍4🎉2