Hejto.pl
Dodaj post

Wpisz coś do wyszukania (minimum 2 znaki)

#samba

Twórca

w Programowanie

0piorunów

Korzystał ktoś z samby(libsmbclient) z wielu wątków?

Chciałem w każdym uruchomionym wątku, stworzyć sobie klienta łączącego się z serwerem, przesyłającego jakieś kilku megabajtowe pliki a na końcu zamykający połączenie.

Jednak zauważyłem że wywoływanie smbc_new_context z wielu wątków jednocześnie, powoduje problemy z pamięcią i wysypywanie się programu a nie znalazłem innej metody na łączenie się z serwerem i przesyłanie danych.

Próbowałem grzebać w bindingach które używamy, ale nie udało mi się nic zdziałać - issue https://github.com/veeso/pavao/issues/17

Obecnie w programie dodaję globalnego locka na operacje i tylko jedna na raz może się wykonywać.

Czy samba jest ograniczona do działania tylko w jednym watku w programie, czy może to błąd nakładki której używam, czy może istnieje jakaś opcja do uruchomienia wsparcia wielu wątków?





Fanatyk1piorunów

@qarmin - ale do przesyłania plików weź ty użyj czegoś normalnego jak scp, rsync, robocopy, gołe SSH, sftp a nawet ftp(s).

Twórca0piorunów

@koszotorobur Sprzęt ma być dostępny u klientów, więc raczej wszystko z powyższych odpada, bo wymaga bardziej skomplikowanych operacji.
Z sambą jest o tyle dobrze, że niemal każdy z poziomu windowsa, prosto sobie to może postawić(być może w przyszłości jakieś inne metody będą dodane, ale samba to must have).

Kosmonauta1piorunów

@qarmin a myślaleś o instalacji z powershella:
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0

?

Twórca0piorunów

@m_h Cóż, z przyzwyczajenia nie napisałem że korzystam z Linuxa, więc to nie jest dostępne tutaj.

Twórca1piorunów

@koszotorobur Dzięki, może to zadziała.

Mimo wszystko wydaje mi się, że i tak sambie daleko do np. Dicom w rankingu najbardziej problematycznych api/bibliotek/usług.

Twórca1piorunów

@m_h Samo polecenie `Add-WindowsCapability` i strona `Get started with OpenSSH for Windows` jasno sugeruje że jest to feature tylko dla Windowsa.

Jak budujemy obraz systemu, to raczej nie możemy się opierać na operacjach, które by dokończyć instalację wymagają uruchomienia n razy systemu, a raczej tak właśnie jest z powyższym poleceniem

Pokaż więcej komentarzy (10)