This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Multiple BSD connections

Hi,

To establish more connections using BSD sockets, I need to determine the best approach.

1)Should I implement multiple threads for this purpose? For example, I could use a threading model similar to the following:

https://www.keil.com/pack/doc/mw6/Network/html/group__bsd__routines.html#ga7005ffbeeff92be5394ff3244da79028

2) Alternatively, should I create a server thread and utilize the listen function with a backlog argument greater than 1? If that’s the case, I would need to manage incoming connections using the accept function to ensure they are handled.

3) As I see the Network debug window details, there is a bsd_cb_tcp callback function, but there is no information on how to implement or use it, Is there any resource?

4)How can I get the BSD socket states, such as Established, Connected, or others?"

5)Is there a function to determine the amount of available memory

Parents
  • 1+2+3) This is really something you need decide for yourself and what fits best your application needs. The BSD socket implementation is thread-safe for the most relevant part. As things can be used in non-blocking mode, it could work in a single thread and polling all sockets, or multi-threaded, using blocking calls on each socket.

    5) And as the BSD sockets use the native TCP and UDP sockets underneath, the same memory management is used in this regard.

Reply
  • 1+2+3) This is really something you need decide for yourself and what fits best your application needs. The BSD socket implementation is thread-safe for the most relevant part. As things can be used in non-blocking mode, it could work in a single thread and polling all sockets, or multi-threaded, using blocking calls on each socket.

    5) And as the BSD sockets use the native TCP and UDP sockets underneath, the same memory management is used in this regard.

Children