Возможно, стоит пояснить разницу между синхронизацией из thread/process-safe и синхронизацией с помощью Lock🤔
Наша задача — заставить разные процессы и потоки обращаться к базе данных (или любым другим ресурсам) последовательно. Чтобы не случилось так называемого race condition, то есть состояние гонки. Это когда разные потоки или процессы пытаются одновременно что-то сделать с одним и тем же ресурсом.
В этом случае нам нужна какая-то логика ограничения. Пока один процесс не завершил своё действие, другие не могут получить доступ к ресурсу.
Так вот, thread-safe и process-safe означает что отдельно взятые операции записи в БД гарантированно будут последовательны. Запросы из разных процессов или потоков выстроятся в очередь и не будут мешать друг другу. Лучше всего когда этот блок реализован на уровне БД в виде атомарных операций или ещё как-то.
Но зачем нам тогда еще дополнительный Lock?
Этот способ синхронизации используется когда процесс никак не укладывается в одно действие и должен сделать множество операций прежде чем дать доступ следующему. В этом случае процесс ставит некий глобальный Lock на ресурс и никто другой, даже получив законное право на доступ, не может ничего сделать. Все ждут пока этот Lock не будет снят.
Это решается на уровне приложения и правильность реализации полностью в вашей ответственности. Например, если забыли разблокировать или сделали перекрёстный Lock (Deadlock как на картинке), то всё зависнет в бесконечном ожидании.
#basic
Nextcloud now offers AI integration for your Nextcloud server. Apps aren't installed by default, except Smart Mail, Background Images & Sus Login.
AI comes with risk, so #Nextcloud rates their #AI apps at 4 levels, based on 3 conditions.
Conditions
1. Is it open source?
2. is the trained model free for self-hosting?
3. is the training data available and free to use?
Rating levels
🟢 = All condition met
🟡 = 2 conditions met
🟠 = 1 condition met
🔴 = 0 conditions met
The AI apps are listed
below w/their ratings.
👇
IMAGE GENERATION
🟡Online StableDiffusion
🟡Self-Hosted StableDiffusion
🔴Online DALL-E 2
TEXT GENERATION
🟡LocalAI
🔴ChatGPT
SPEECH-2-TEXT DICTATION
🟢OpenAI Whisper
🟡External Whisper
SPEECH-2-TEXT TRANSCRIPTION
🟢OpenAI Whisper
🟢LocalAI
SMART INBOX
🟢 Built-In
(can be disabled in low-left settings)
FACE/OBJECT RECOGNITION
🟢Recognize
BACKGROUND IMAGES/BLUR
🟢 Built-In
TRANSLATION
🟢Opus
🟢LibreTranslate
🔴DeepL
SUSPICIOUS LOGIN
🟢 Built-In
⚡️@LinuxTechIndex
.
You can log and track the phone locations of your family and friends in complete privacy, using your Nextcloud server.
To do this you need to install the Nextcloud PhoneTrack App on your Nextcloud server, and the Android PhoneTrack App on every DeGoogled phone you want to track.
The F-Droid version is old and buggy.
To get the newer Dev Android version, you:
1. Go to the PhoneTrack Dev GitLab page, scroll down and click the "APK Direct Download" link
2. At top "Pipeline" option, click the Download arrow and select "AssembleDevDebug:archive"
3. This downloads a zip file. Extract the zip and install the APK.
CONNECT ALL PHONES AND TRACK
4. On Nextcloud create a dedicated account for PhoneTracking.
5. Create a PhoneTrack "Session" in the Nextcloud PhoneTrack app.
6. Sign each phone into the Nextcloud PhoneTrack account, and on the phone, add a "PhoneTrack log job" to the Session on Nextcloud.
⚡️@LinuxTechIndex
#PhoneTrack#Tracker#Nextcloud