Uploaded image for project: 'C# Driver'
  1. C# Driver
  2. CSHARP-138

Add asynchronous APIs

    XMLWordPrintableJSON

Details

    • Icon: New Feature New Feature
    • Resolution: Duplicate
    • Icon: Critical - P2 Critical - P2
    • 2.0
    • None
    • None
    • None
    • Minor Change

    Description

      C# 5.0 is all about making asynchronous programming a first class citizen of the language. Also, writing scalable server applications requires using only asynchronous I/O. This can only be done if the MongoDB driver exposes asynchronous operations for querying the database.

      In order to make it compatible with what C# 5.0 will be using, those APIs will need to use the task based pattern, and return Task<T>.
      For exemple,

      public MongoCursor<TDefaultDocument> Find(IMongoQuery query)

      would have an asynchronous equivalent:

      public Task<MongoCursor<TDefaultDocument>> FindAsync(IMongoQuery query)

      The resulting task represents a token for asynchronous completion of the operation.

      The driver exposes lots of I/O operations, but having the most used ones (Find, FindOne, Insert...) implemented first that way would go a long way.

      Attachments

        Activity

          People

            craig.wilson@mongodb.com Craig Wilson
            flavien Flavien
            Votes:
            77 Vote for this issue
            Watchers:
            66 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: