objectbox-c | C and C++ database for objects and structs | Database library

 by   objectbox C Version: v0.18.1 License: Apache-2.0

kandi X-RAY | objectbox-c Summary

kandi X-RAY | objectbox-c Summary

objectbox-c is a C library typically used in Database applications. objectbox-c has no bugs, it has no vulnerabilities, it has a Permissive License and it has low support. You can download it from GitHub.

ObjectBox Data Persistence and Data Sync follows an offline-first approach and can be used on-premise as well as with a cloud setup. This is the ObjectBox runtime library to run ObjectBox as an embedded database in your C or C++ application.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              objectbox-c has a low active ecosystem.
              It has 156 star(s) with 29 fork(s). There are 14 watchers for this library.
              OutlinedDot
              It had no major release in the last 12 months.
              There are 8 open issues and 18 have been closed. On average issues are closed in 97 days. There are 1 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of objectbox-c is v0.18.1

            kandi-Quality Quality

              objectbox-c has 0 bugs and 0 code smells.

            kandi-Security Security

              objectbox-c has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              objectbox-c code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              objectbox-c is licensed under the Apache-2.0 License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              objectbox-c releases are available to install and integrate.
              Installation instructions, examples and code snippets are available.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of objectbox-c
            Get all kandi verified functions for this library.

            objectbox-c Key Features

            No Key Features are available at this moment for objectbox-c.

            objectbox-c Examples and Code Snippets

            No Code Snippets are available at this moment for objectbox-c.

            Community Discussions

            Trending Discussions on objectbox-c

            QUESTION

            ObjectBox Dart/Flutter multi-isolate access
            Asked 2021-Jul-25 at 14:05

            Creating a separate thread for a question stated in a comment...

            How does ObjectBox handle concurrent(by different threads/isolates) write requests? example of my use case: FCM "onBackgroundmessage" call runs in a different isolate, the same time multiple write requests might happen. "Hive" is failing in this case completely. Is there any inbuild solution in ObjectBox?

            ...

            ANSWER

            Answered 2021-Jul-25 at 14:05

            ObjectBox for dart is based on a native ObjectBox core library that handles concurrency using Transactions. Let me pick out few points relevant to the question:

            • Transactions manage multi-threading; e.g. a transaction is tied to a thread and vice versa.
            • Read(-only) transactions never get blocked or block a write transaction.
            • There can only be a single write transaction at any time; they run strictly one after the other (sequential).

            As for the isolates in Dart/Flutter - yes, they can safely access the same store, you just need to make sure it really is the same native store instance. To do so, you do the following steps:

            1. Create a Store() instance in your main isolate, as you normally would.
            2. Get ByteData store.reference which contains the information about the native store.
            3. Send this reference to another isolate, via a SendPort.
            4. In another isolate, receive the reference and open a local Store instance, using Store.fromReference(getObjectBoxModel(), msg as ByteData).
            5. Now both isolates have their own Dart Store instances which internally use the same underlying native store. Therefore, their transactions are synchronized, they both see the same data and get notifications on data changes. 🎉

            You can see the code I've just described this test case: https://github.com/objectbox/objectbox-dart/blob/461a948439dcc42f3956b7d21b232eb9c2bc26e1/objectbox/test/isolates_test.dart#L50

            Make sure you don't close the store while another isolate is still using it. Better not close it at all - that's best practice in normal applications without huge amounts of background work.

            Source https://stackoverflow.com/questions/68519352

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install objectbox-c

            In most cases you want to use the C and C APIs in combination with the [ObjectBox Generator](https://github.com/objectbox/objectbox-generator) tool. This way, you get a convenient C or C API which requires minimal code on your side to work with the database.
            C: [include/objectbox.h](include/objectbox.h)
            C++: [include/objectbox.hpp](include/objectbox.hpp) (depends on objectbox.h)

            Support

            [C and C docs](https://cpp.objectbox.io/) - official ObjectBox C and C documentation. [include/objectbox.h](include/objectbox.h) - C API header file contains docs as code comments. [include/objectbox.hpp](include/objectbox.hpp) - C++ API header file contains docs as code comments. [C and C++ API reference docs](https://objectbox.io/docfiles/c/current/) - online HTML docs (Doxygen).
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/objectbox/objectbox-c.git

          • CLI

            gh repo clone objectbox/objectbox-c

          • sshUrl

            git@github.com:objectbox/objectbox-c.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link